PHP前端开发

详解python中列表与元组

百变鹏仔 3小时前 #Python
文章标签 详解

通用操作:索引、分片、加、乘、检查某个元素是否属于序列的成员、长度、最小值、最大值

举例:

<p style="margin-bottom: 7px;">numbers=[100,34,67]<br>len(numbers) #返回值为3max(numbers) #返回值为100min(numbers) #返回值为34</p>

列表

1、list函数

&gt;&gt;&gt;list('Hello')['H','e','l','l','o']

*可以用join(例如:''.join(somelist))将组成的列表转化为字符串

立即学习“Python免费学习笔记(深入)”;

2、列表的操作

元素赋值:

&gt;&gt;&gt;x=[1,2,3]&gt;&gt;&gt;x[1]=4&gt;&gt;&gt;x[1,4,3]

删除元素:

&gt;&gt;&gt;x=['abc','def','ghi','jk']&gt;&gt;&gt;del x[2]&gt;&gt;&gt;x['abc','def','jk']

分片赋值:

&gt;&gt;&gt;x=list('Happy')&gt;&gt;&gt;name['H','a','p','p','y']&gt;&gt;&gt;x[1:]=list('ello')&gt;&gt;&gt;x['H','e','l','l','o']

3、列表方法:

append

&gt;&gt;&gt;x=[1,2,3]&gt;&gt;&gt;x.append(4)&gt;&gt;&gt;x[1,2,3,4]

count

&gt;&gt;&gt;x=[1,2,3,1,3,5,5]&gt;&gt;&gt;x.count(3)2

extend

&gt;&gt;&gt;a=[1,1]&gt;&gt;&gt;b=[2,3]&gt;&gt;&gt;a.extend(b)&gt;&gt;&gt;a[1,1,2,3]

index

&gt;&gt;&gt;x=['a','b','c']&gt;&gt;&gt;x.index('b')1

insert 插入元素

&gt;&gt;&gt;x=[1,2,3]&gt;&gt;&gt;x.insert(2,'a')&gt;&gt;&gt;x[1,2,'a',3]

pop 移除列表元素(默认最后一个)

&gt;&gt;&gt; x=[1,2,3,4]&gt;&gt;&gt; x.pop()4&gt;&gt;&gt; x.pop(1)2&gt;&gt;&gt; x[1, 3]

remove 移除列表中某个值的第一个匹配项

&gt;&gt;&gt; x=['my','to','is','she','to']&gt;&gt;&gt; x.remove('to')&gt;&gt;&gt; x['my', 'is', 'she', 'to']

reverse 将列表中的元素反向存放

&gt;&gt;&gt; x=[1,2,3]&gt;&gt;&gt; x.reverse()&gt;&gt;&gt; x[3, 2, 1]
&gt;&gt;&gt; x=[1,2,3]&gt;&gt;&gt; list(reversed(x))[3, 2, 1]&gt;&gt;&gt; x[1, 2, 3]

sort 用于在原位置对列表进行排序

&gt;&gt;&gt; x=[4,6,2,1,7,8,3]&gt;&gt;&gt; x.sort()&gt;&gt;&gt; x[1, 2, 3, 4, 6, 7, 8]&gt;&gt;&gt; x=[4,6,2,1,7,8,3]&gt;&gt;&gt; y=sorted(x)&gt;&gt;&gt; x[4, 6, 2, 1, 7, 8, 3]&gt;&gt;&gt; y[1, 2, 3, 4, 6, 7, 8]&gt;&gt;&gt; x=[3,2,1]&gt;&gt;&gt; y=x&gt;&gt;&gt; y.sort()&gt;&gt;&gt; x[1, 2, 3]&gt;&gt;&gt; y[1, 2, 3]
  &gt;&gt;&gt; sorted('hello')  ['e', 'h', 'l', 'l', 'o']

 元组:不可改变序列

&gt;&gt;&gt; 1,2,3(1, 2, 3)&gt;&gt;&gt; (1,2,3)(1, 2, 3)&gt;&gt;&gt; () #空元组()&gt;&gt;&gt; 1,SyntaxError: invalid syntax&gt;&gt;&gt; 1,(1,)&gt;&gt;&gt; 1, #元祖必须有逗号(1,)&gt;&gt;&gt; 3*(40+2,)(42, 42, 42)

tuple函数 将序列转换成元组

&gt;&gt;&gt; tuple([3,2,1])(3, 2, 1)&gt;&gt;&gt; tuple('abc')('a', 'b', 'c')

元组不可替代性原因

  • 元组可以在映射中当作键使用

  • 元组作为很多内建函数和方法的返回值存在