Python基本数据类型( 元祖 列表 )
元祖 tuple
元组被称为只读列表, 元组的元素不能修改. 即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")
创建元组
# 创建元组 >>> py1=('python', 'www', 1, 20) >>> type(py1) <class 'tuple'> >>> py2=(3, 2, 1, 20) >>> type(py2) <class 'tuple'> >>> py3=1,'a','b','d' #不用括号也行 >>> type(py3) <class 'tuple'> >>> py=() #创建空元组 >>> type(py) <class 'tuple'> # 元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用 >>> py=(50) >>> type(py) #不加逗号,就是整型 <class 'int'> >>> py=(50,) >>> type(py) #加了逗号,就是元组 <class 'tuple'> >>> py=('abc') >>> type(py) #不加逗号,就是字符串 <class 'str'> >>> py=('abc',) >>> type(py) <class 'tuple'> >>> py=50, #还是可以不加括号,但是要有逗号 >>> type(py) <class 'tuple'> >>> py=50 >>> type(py) <class 'int'>
查询元组
>>> py=('python', 'www', 1, 20,True)
>>> py[1]
'www'
>>> print(py[0]) python >>> print(py[3:5]) (20, True)
修改元组
元组中的元素值是不允许修改的,但可以对元组进行连接组合
>>> print(py1) ('python', 'www', 1, 20) >>> print(py2) (1, 'a', 'b', 'd') >>> py3=py1+py2 >>> print(py3) ('python', 'www', 1, 20, 1, 'a', 'b', 'd')
删除元组
元组中的元素值是不允许删除的,但可以使用del 语句来删除整个元组
>>> tup=('python', 'www', 1, 20,True); >>> print(tup) ('python', 'www', 1, 20, True) >>> del tup #删除元组后, 再输出变量会报异常信息 >>> print(tup) Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'tup' is not defined
元组运算

其他操作
# len(tuple) 计算元组元素个数 >>> py=('python', 'www', 1, 20,True) >>> len(py) 5 >>> len(('python', 20,True)) 3 # max(tuple) 返回元组中元素最大值 >>> py=(1, 20,True) #数字,布尔值 >>> max(py) 20 >>> py=('python', 'www') #字符串 >>> max(py) 'www' >>> py=('python', 'www', 1, 20,True) >>> max(py) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: '>' not supported between instances of 'int' and 'str' # min(tuple) 返回元组中元素最小值 >>> py=(1, 2.8,True) >>> min(py) 1 # tuple(seq) 将列表转换为元组 >>> list=['abc',2,True,('a',2)] >>> tuple(list) #不赋值的话是不变的 ('abc', 2, True, ('a', 2)) >>> print(list) ['abc', 2, True, ('a', 2)] >>> tup=tuple(list) >>> print(tup) ('abc', 2, True, ('a', 2))
列表 list
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,它是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型. 列表可以存 --> 数字 布尔值 字符串 列表 元祖 字典 比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
增
>>> py=[1,'a','bc',2,3,'a'] >>> py.insert(0,55) #按照索引增加 >>> print(py) [55, 1, 'a', 'bc', 2, 3, 'a'] >>> py.insert(2,'new') >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a'] >>> py.append('zzz') #增加到最后 >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz'] >>> py.append([1,'in',3]) >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3]] >>> py.extend(['q,a,w']) #迭代去增加 >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w'] >>> py.extend(['q,a,w','test']) >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test'] >>> py.extend('abc') >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c'] >>> py.extend('a,b,c') >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c'] >>> py.extend([1,2,3]) >>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3]
>>> py.extend([8,'kk',3])
>>> print(py)
[55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3, 8, 'kk', 3]
删
>>> print(py) [55, 1, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3, 8, 'kk', 3] # pop >>> py1=py.pop() >>> print(py1) 3 >>> py1=py.pop(1) #按照位置去删除, 有返回值. 默认删除最后一个 >>> print(py1) 1 >>> print(py) [55, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3, 8, 'kk'] >>> py1=py.pop() >>> print(py1) kk >>> print(py) [55, 'new', 'a', 'bc', 2, 3, 'a', 'zzz', [1, 'in', 3], 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3, 8] # del >>> del py[1:9] #按照位置删除, 也可以切片删除没有返回值 >>> print(py) [55, 'q,a,w', 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3, 8] >>> del py[1] >>> print(py) [55, 'q,a,w', 'test', 'a', 'b', 'c', 'a', ',', 'b', ',', 'c', 1, 2, 3, 8] # remove >>> py.remove(',') #按照元素删除,没有返回值.移除列表里第一个匹配项 >>> print(py) [55, 'q,a,w', 'test', 'a', 'b', 'c', 'a', 'b', ',', 'c', 1, 2, 3, 8] >>> py.remove('a') >>> print(py) [55, 'q,a,w', 'test', 'b', 'c', 'a', 'b', ',', 'c', 1, 2, 3, 8] # clear >>> py.clear() #清空列表 >>> print(py) []
改
>>> py=[1,'a','b',2,3,'a'] >>> py[1]='jjhm' # 按索引修改 >>> print(py) [1, 'jjhm', 'b', 2, 3, 'a'] >>> py[1:3]=['yyy','zzz'] #按索引从几到几被修改, 顾首不顾尾 >>> print(py) [1, 'yyy', 'zzz', 2, 3, 'a'] >>> py[1:4]=['yyy','zzz'] >>> print(py) [1, 'yyy', 'zzz', 3, 'a'] >>> py[2:5]=['几','到几'] >>> print(py) [1, 'yyy', '几', '到几']
查
切片去查,或者循环去查
>>> py=[1,'ass','b',2,True,'a'] >>> print('cat:',py[2]) cat: b >>> print('cat:',py[1:4]) #索引1至3的值 cat: ['ass', 'b', 2]
其他操作
# count 次数 统计某个元素在列表中出现的次数 >>> py = ["q","w","q","r","t","y",1,0,True,False] >>> print(py.count('q')) 2 >>> print(py.count(1)) 2 >>> print(py.count(0)) 2 # index 索引 从列表中找出某个值第一个匹配项的索引位置 >>> py = ["q","w","q","r","t","y",1,0,True,False] >>> print(py.index('y')) 5 # sort 用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数 reverse =排序规则,reverse = True 降序,reverse = False 升序(默认) http://www.runoob.com/python3/python3-att-list-sort.html >>> py = ["q","w","q","r","t","y"] >>> py.sort() >>> print(py) ['q', 'q', 'r', 't', 'w', 'y'] >>> >>> py = ['f','g','f','c','a','z'] >>> print(py.sort()) #没有返回值 None >>> print(py) ['a', 'c', 'f', 'f', 'g', 'z'] >>> py = ['f','g','f','c','a','z'] >>> py.sort(reverse = True) #降序 反向 >>> print(py) ['z', 'g', 'f', 'f', 'c', 'a'] >>> py.sort(reverse = False) #升序 正向 (默认) >>> print(py) ['a', 'c', 'f', 'f', 'g', 'z'] >>> py = [1,0,True,False] #不同数据类型有的不能排序, 但布尔值和数字可以 >>> py.sort() >>> print(py) [0, False, 1, True] # reverse 将列表中的元素反向存放 >>> py = [2,1,3,4,5] >>> print(py) [2, 1, 3, 4, 5] >>> py.reverse() >>> print(py) [5, 4, 3, 1, 2] >>> print(py.reverse()) # 也是没有返回值 None >>> print(py) [2, 1, 3, 4, 5]
自用博文.不限传播.欢迎留言.共同进步.

浙公网安备 33010602011771号