Python基本操作学习笔记(二)

1、字符串

字符串是由零个或多个字符组成的有限串行,是用单引号或者双引号括起来的。

字符串的连接:直接使用操作符+就可以将两个或者两个以上的字符串进行连接。

字符串的复制:可以使用操作符*对字符串进行重复。

>>>"Python 真强大"*3
"Python 真强大Python 真强大Python 真强大"

 获取字符串的长度:可以利用len()函数来获取字符串长度。

#获取手机号长度
>>>len("13013989981")
11

字符串查找:字符串查找是指查找某一个字符串是否包含在另一个字符串中,用in 或者not in 这两种方法均可实现。

>>>"测试" in "新产品上线测试号"
True
>>>"测试" in "我是一个正常用户"
False
>>>"测试" not in "新产品上线测试号"
False
>>>"测试" not in "我是一个正常用户"
True

除了 in 和not in,还可以用find,当用find 查找某一字符是否存在于某个字符串中时,如果存在则返回该字符的具体位置,如果不存在则返回−1。

#字符c 在字符串Abc 中的第3 位
>>>"Abc".find("c")
2

#字符d 不存在于字符串Abc 中
>>>"Abc".find("d")
-1

字符串索引:字符串索引是指通过字符串中值所处的位置对值进行选取。需要注意的是字符串中的位置是从0 开始的。

>>>a = "Python 数据分析"
>>>a[0]    #获取字符串中第1 位的值。
'P'

>>>a = "Python 数据分析"
>>>a[3]   #获取字符串中第4 位的值
'h'

>>>a = "Python 数据分析"
>>>a[1:3]    #获取字符串中第2 位到第4 位之间的值,且不包含第4 位的值。
'yt'

>>>a = "Python 数据分析"
>>>a[:3]    #获取第4位之前的值,且不包含第4 位的值。
'Pyt'

>>>a = "Python 数据分析"
>>>a[6:]    #获取第7位之后的值,包含第7位的值。
'数据分析'

>>>a = "Python 数据分析"
>>>a[-1]    #获取字符串中最后一位的值
'析'

字符串分隔:字符串分隔是先将一个字符用某个分隔符号分开,然后将分隔后的值以列表的形式返回,用到的是split()函数。

#将字符串"a,b,c"用逗号进行分隔
>>>"a,b,c".split(",")
['a', 'b', 'c']
#将字符串"a|b|c"用|进行分隔
>>>"a|b|c".split("|")
['a', 'b', 'c']

移除字符:strip()函数用来移除字符串首尾的指定字符,默认移除字符串首尾的空格或换行符。

#移除空格
>>>" a ".strip()
'a'
#移除换行符
>>>"\ta\t ".strip()
'a'
#移除指定字符A
>>>"AaA".strip("A")
'a'

>>> " AaA".strip("A")    #前面有一个空格
' Aa'

2、列表

列表的复制:列表的复制和字符串的复制类似,也是利用*操作符。

>>>int_list = [1,2,3]
>>>int_list*2
[1,2,3,1,2,3]
>>>str_list = ["a","b","c"]
>>>str_list*2
["a","b","c","a","b","c"]

 列表的合并:列表的合并就是将两个现有的list 合并在一起,一种是利用+操作符,它和字符串的连接一致;另外一种用的是extend()函数。列表的合并是有先后顺序
的。

>>>int_list = [1,2,3]
>>>str_list = ["a","b","c"]
>>>int_list + str_list
[1,2,3,"a","b","c"]
>>>str_list + int_list
['a', 'b', 'c', 1, 2, 3]

>>>int_list = [1,2,3]
>>>str_list = ["a","b","c"]
>>>int_list.extend(str_list)
>>>int_list
[1,2,3,"a","b","c"]
>>>int_list = [1,2,3]
>>>str_list = ["a","b","c"]
>>>str_list.extend(int_list)
>>>str_list
['a', 'b', 'c', 1, 2, 3] 

向列表中插入新元素:插入数据元素的操作主要有append()和insert()两个函数可用。

函数 append()是在列表末尾插入新的数据元素。

>>>int_list = [1,2,3]
>>>int_list.append(4)
>>>int_list
[1,2,3,4]
>>>str_list = ["a","b","c"]
>>>str_list.append("d")
>>>str_list
["a","b","c","d"]

函数 insert()是在列表的指定位置插入新的数据元素。

>>>int_list = [1,2,3]
>>>int_list.insert(3,4)  #表示在第4 位插入元素4
>>>int_list
[1,2,3,4]
>>>int_list = [1,2,3]
>>>int_list.insert(2,4)  #表示在第3 位插入元素4
>>>int_list
[1,2,4,3] 

 获取列表中值出现的次数:利用 count()函数可以获取某个值在列表中出现的次数。

>>>score_list = ["一班","一班","三班","二班","一班"]
>>>score_list.count("一班")
3

获取列表中值出现的位置: 利用index()函数可以获取列表中值出现的位置

>>>sale_list = ["倪凌晓","侨星津","曹觅风","杨新竹","王元菱"]
>>>sale_list.index("杨新竹")
3

获取列表中指定位置的值:有普通索引和切片索引。

 #普通索引是获取某一特定位置的值

>>>v = ["a","b","c","d","e"]
>>>v[0]#获取第1 位的数
"a"
>>>v[3]#获取第4 位的数
"d"

#切片索引是获取某一位置区间内的数

>>>i = ["a","b","c","d","e"]
>>>i[1:3]#获取第2 位到第4 位的数
["b","c"]
>>>i[:3]#获取第1 位到第4 位的数,且不包含第4 位
['a', 'b', 'c']
>>>i[3:]#获取第4 位到最后一位的数
['d', 'e'] 

 删除列表中的值:有pop()和remove()两个函数可用。

pop()函数是根据列表中的位置进行删除,也就是删除指定位置的值。

>>> str_list = ["a","b","c","d"]
>>> str_list.pop(1)    #删除第2 位的值
'b'
>>> str_list
['a', 'c', 'd']

remove()函数是根据列表中的元素进行删除,也就是删除某一元素。 如果列表中有多个符合条件的元素,则只删除第1个发现的元素。

>>>str_list = ["a","b","c","d"]
>>>str_list.remove("b")
>>>str_list
['a', 'c', 'd']

列表排序:sort()函数默认采用升序排列。 

>>> s = [1,3,2,4]
>>> s.sort()  #默认为顺序
>>> s
[1, 2, 3, 4]
>>> s.sort(reverse=True)    #设置参数reverse=True则为逆序
>>> s
[4, 3, 2, 1]

 带返回值排序:sorted()函数

>>> a = [1,2,3,4]
>>> b = sorted(a,reverse=True)
>>> b
[4, 3, 2, 1]
>>> b = sorted(a)
>>> b
[1, 2, 3, 4]

 列表逆序:reversed()函数和列表切片二种方式。

>>> a = [1,3,2,5,3,4]
>>> b = list(reversed(a))    #因为 reversed返回值是list_reverseiterator,是一个迭代器,所以需要调用list函数。
>>> b
[4, 3, 5, 2, 3, 1]
>>> c=b[::-1]    #列表切片
>>> c
[1, 3, 2, 5, 3, 4]

#切片扩展  [开始:结束:步进]

>>> string = 'python'
>>> string[::1]    # 步进为1
'python'
>>> string[::2]    # 步进为2, [0, 0+2, 0+2+2...]
'pto'
>>> string[::-1]    #当步进<0时,开始缺省值-1,结束缺省值为-len(string)-1,此处步进-1,开始结束均缺省,则相当于把字符串倒了过来。
'nohtyp'
>>> string[::-2]
'nhy'

 3、字典

字典(dict)是一种键值对的结构,键必须是唯一的。键值对在字典中以{key1:value1,key2:value2}方式标记。注意,键值对内部用冒号分隔,而各个对之间用逗号分隔,所有这些都包括在花括号中。

>>>test_dict={}    #先创建一个空的字典,然后向该字典内输入值。
>>>test_dict["张三"]=13313581900
>>>test_dict["李四"]=15517896750
>>>test_dict
{'张三': 13313581900, '李四': 15517896750}

>>>test_dict = {'张三': 13313581900, '李四': 15517896750}    #将值直接以键值对的形式传入字典中。
>>>test_dict
{'张三': 13313581900, '李四': 15517896750} 

>>>contact=(["张三",13313581900],["李四",15517896750])    #将键值以列表的形式存放在元组中,然后用dict 进行转换。
>>>test_dict=dict(contact)
>>> test_dict
{'张三': 13313581900, '李四': 15517896750}
>>> test_dict['张三']    #获取键对应的值
13313581900

keys()方法:用来获取字典内的所有键。 

values()方法:用来获取字典内的所有值。

items()方法:用来得到一组组的键值对。

>>> test_dict = {'张三': 13313581900, '李四': 15517896750}
>>> test_dict.keys()
dict_keys(['张三', '李四'])
>>> test_dict.values()
dict_values([13313581900, 15517896750])
>>> test_dict.items()
dict_items([('张三', 13313581900), ('李四', 15517896750)])

4、元组

元组(tup)与列表类似,但元组的元素不能修改;元组使用小括号,而列表使用中括号。

>>>tup = (1,2,3)
>>>len(tup)    #获取元组的长度
3

获取元组内元素的方法与列表相似,分为普通索引和切片索引。

>>> tup = (1,2,3,4,5)
>>> tup[2]    #普通索引
3
>>> tup[3]
4
>>> tup[1:3]    #切片索引
(2, 3)
>>> tup[:3]
(1, 2, 3)
>>> tup[1:]
(2, 3, 4, 5)
>>> tup[::-1]
(5, 4, 3, 2, 1)

元组与列表相互转换
元组和列表是两种相似的数据结构,两者经常互相转换。
list()函数:将元组转化为列表。 

>>>tup = (1,2,3)
>>>list(tup)
[1,2,3]

tuple()函数:将列表转化为元组。 

>>>t_list = [1,2,3]
>>>tuple(t_list)
(1,2,3)

zip()函数
zip()函数用于将可迭代的对象(列表、元组)作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

zip()函数常与for 循环一起搭配使用。

>>>list_a = [1,2,3,4]    #可迭代对象是列表
>>>list_b =["a","b","c","d"]
>>>for i in zip(list_a,list_b):
          print(i)
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')

 >>>list_a = (1,2,3,4)    #可迭代对象是元组
>>>list_b = ("a","b","c","d")
>>>for i in zip(list_a,list_b):
          print(i)
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')

你可能感兴趣的:(Python,python,列表,字符串,数据分析)