python——列表与元组

来源:互联网 发布:js 定时执行 编辑:程序博客网 时间:2024/06/06 07:41

列表

创建普通列表,见上一个for循环的例子。

创建混合类型的列表,就是每个元素可以不是相同类型的数据,也可以列表套列表

创建空列表

>>> li=[]>>> li[]


想列表添加元素

append()

>>> li.append('misszhou')>>> li['misszhou']>>> li.append('zyj','2013')Traceback (most recent call last):  File "<pyshell#21>", line 1, in <module>    li.append('zyj','2013')TypeError: append() takes exactly one argument (2 given)extend()>>> li.extend('zyj','21')Traceback (most recent call last):  File "<pyshell#22>", line 1, in <module>    li.extend('zyj','21')TypeError: extend() takes exactly one argument (2 given)>>> li.extend(['zyj','21'])>>> li['misszhou', 'zyj', '21']


insert()可以不放到最后


>>> li.insert(0,'zz')>>> li['zz', 'misszhou', 'zyj', '21']


从列表中获取元素

>>> li[1]'misszhou'>>> temp=li[0]>>> li[0]=li[1]>>> li[1]=temp>>> li['misszhou', 'zz', 'zyj', '21']


从列表删除元素

remove()>>> li.remove('21')>>> li['misszhou', 'zz', 'zyj']>>> li.remove('xx')Traceback (most recent call last):  File "<pyshell#35>", line 1, in <module>    li.remove('xx')ValueError: list.remove(x): x not in listdel>>> del  li[0]>>> li['zz', 'zyj']pop()>>> li['zyj', '21', 'misszhou']>>> li.pop()'misszhou'>>> li['zyj', '21']>>> li.pop(0)'zyj'>>> li['21']


列表分片 Slice

一次性获得多个多个元素,只是获得分片的拷贝,不改变原来的列表

>>> li=['zyj','21','misszhou']>>> li[0:1]['zyj']>>> li['zyj', '21', 'misszhou']>>> li[1:]['21', 'misszhou']>>> li[:2]['zyj', '21']>>> li[:]['zyj', '21', 'misszhou']


列表的常用操作符

比较操作符/逻辑操作符/连接操作符/重复操作符/成员关系操作符

>>> list1=[123]>>> list2=[234]>>> list1>list2False>>> list1.append(456)>>> list2.append(123)>>> list1[123, 456]>>> list2[234, 123]>>> list1>list2False>>> list3=[123,456]>>> list1==list3True>>> list4=list1+list2>>> list4[123, 456, 234, 123]>>> list1.extend(list2)>>> list1[123, 456, 234, 123]>>> list1+'zyj'Traceback (most recent call last):  File "<pyshell#28>", line 1, in <module>    list1+'zyj'TypeError: can only concatenate list (not "str") to list>>> list1*3[123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123]>>> list1*=3>>> list1[123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123]>>> list1*=5>>> list1[123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123]>>> 123 in list1True>>> 123 not in list1False>>> list5=[123,['zyj','21'],456]>>> 'zyj' in list5False>>> 'zyj' in list5[1]True>>> list5[1][1]'21'


列表的函数

>>> dir(list)['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']>>> list1.count(123)30>>> list1.index(123)0>>> list1.index(123,3,7)3>>> list5.reverse()>>> list5[456, ['zyj', '21'], 123]>>> list5.sort()Traceback (most recent call last):  File "<pyshell#46>", line 1, in <module>    list5.sort()TypeError: unorderable types: list() < int()>>> list6=[4,2,1,5,2,6,3,7]>>> list6.sort()>>> list6[1, 2, 2, 3, 4, 5, 6, 7]>>> list6.sort(reverse=True)>>> list6[7, 6, 5, 4, 3, 2, 2, 1]>>> list7=list6[:]>>> list8=list6>>> list7[7, 6, 5, 4, 3, 2, 2, 1]>>> list8[7, 6, 5, 4, 3, 2, 2, 1]>>> list6.sort()>>> list6[1, 2, 2, 3, 4, 5, 6, 7]>>> list7[7, 6, 5, 4, 3, 2, 2, 1]>>> list8[1, 2, 2, 3, 4, 5, 6, 7]


元组

(有限制的列表,不可改变内容)

区别:

创建与访问

>>> tuple1=(1,2,3,4)>>> tuple1(1, 2, 3, 4)>>> tuple1[:](1, 2, 3, 4)>>> tuple1[1:](2, 3, 4)>>> tuple1[1]=2Traceback (most recent call last):  File "<pyshell#4>", line 1, in <module>    tuple1[1]=2TypeError: 'tuple' object does not support item assignment>>> temp=(1)>>> temp1>>> type(temp)<class 'int'>>>> temp2=2,3,4>>> type(temp2)<class 'tuple'>>>> temp=[]>>> type(temp)<class 'list'>>>> temp=()>>> type(temp)<class 'tuple'>>>> temp=(1,)>>> type(temp)<class 'tuple'>>>> temp=1,>>> type(temp)<class 'tuple'>>>> 8*864>>> 8*(8)64>>> 8*(8,)(8, 8, 8, 8, 8, 8, 8, 8)


更新删除

>>> temp=('zyj','21','misszhou')>>> temp=temp[:2]+('2013',)>>> temp('zyj', '21', '2013')>>> temp=temp[:3]+('misszhou',)>>> temp('zyj', '21', '2013', 'misszhou')>>> del temp>>> tempTraceback (most recent call last):  File "<pyshell#27>", line 1, in <module>    tempNameError: name 'temp' is not defined


操作符

拼接/重复/关系操作符<><=>=/逻辑and or not/成员in no

 
0 0
原创粉丝点击