Python基础二

列表的in not in 运算符

  • in判断一个对象是否存在于容器内,如果纯在返回true,否则返回false,与in相同
>>> L=[1,2,3]
>>> 1 in L
True
>>> 4 in L
False

列表的索引

  • 语法:列表[整数表达式]
  • 用法:取值时,等同于字符串的索引操作,索引分为正向索引和反向索引,规则与字符串索引规则完全相同
>>> L=[3,1,5,'r','e']
>>> L[2]
5
>>> L[4]
'e'
>>> 

列表的索引赋值

  • 列表是可变的序列,可以通过索引赋值改变列表中的元素
>>> L
[3, 1, 5, 'r', 'e']
>>> L[2]=9
>>> L
[3, 1, 9, 'r', 'e']
>>> L
[3, 1, 9, 'r', 'e']
>>> L[-1]='c'
>>> L
[3, 1, 9, 'r', 'c']

列表的切片

  • 语法:
    • 列表[:]
    • 列表[::]
    • 列表的切片取值时,返回一个列表,规则等同于字符串切片规则

列表的切片赋值

  • 作用:可以改变原列表的排序,可以插入和修改数据,可以用切片改变列表的对应元素的值
  • 语法:列表[切片]=可迭代对象
  • 注:赋值运算符的右侧必须是一个可迭代对象
>>> L
[3, 1, 9, 'r', 'c']
>>> L[0:1]=[1.1,2.2]
>>> L
[1.1, 2.2, 1, 9, 'r', 'c']
>>> L
[1.1, 2.2, 1, 9, 'r', 'c']
>>> L[1:]=[3.3,4.4]
>>> L
[1.1, 3.3, 4.4]
>>> L
[1.1, 3.3, 4.4]
>>> L[:]=[1,2]
>>> L
[1, 2]
>>> L
[1, 2]
>>> L[1:1]=[3]  //中间插入一个3
>>> L
[1, 3, 2]
>>> L
[1, 3, 2]
>>> L[0:0]=[4] //从前面插入
>>> L
[4, 1, 3, 2]
>>> L
[4, 3, 6, 7]
>>> L[4:4]=[8]  //从后面插入
>>> L
[4, 3, 6, 7, 8]
>>> L=[1,4]
>>> L
[1, 4]
>>> L[1:1]=range(2,4) //用range生成可迭代对象
>>> L
[1, 2, 3, 4]
>>> L
[1, 2, 3, 4]
>>> L[1:2]='ABCD'
>>> L
[1, 'A', 'B', 'C', 'D', 3, 4]
  • 切片赋值注意事项:

对于步长不等于1的切片赋值,赋值运算符右侧的可迭代对象提供的元素个数一定要等于切片切出的段数
如:

>>> L
[1, 2, 3, 4, 5]
>>> L[::2]='ABC'
>>> L
['A', 2, 'B', 4, 'C']
>>> L[::2]='ABCD]
  File "<stdin>", line 1
    L[::2]='ABCD]
                ^
SyntaxError: EOL while scanning string literal

del 语句 用于删除列表中的元素

  • 语法:del 序列[整数表达式]
    del 序列[切片]
>>> L
['A', 2, 'B', 4, 'C']
>>> del L[-1]
>>> L
['A', 2, 'B', 4]
>>> L
['A', 2, 'B', 4]
>>> del L[0]
>>> L
[2, 'B', 4]
>>> L=[1,2,3,4,5,6]
>>> del L[::2]
>>> L
[2, 4, 6]

Python3常用语序列的函数

  • len(seq) 返回容器的元素个数
  • max(x) 返回序列的最大值元素
  • min(x) 返回序列的最小值元素
  • sum(x) 返回序列中所有元素的和(元素必须是数值类型)
  • any(x) 真值测试,如果容器内其中一个为喂True,则返回True,否则false
  • all(x) 真值测试,容器内所有元素的bool值为True才返回True
>>> L
[2, 4, 6]
>>> sum(L)
12
>>> L
[2, 4, 6]
>>> len(L)
3

Python3中常用的列表方法

help(list)

L.index(v[,begin[,end]) 返回对应元素的索引下标,begin为开始索引,end为结束索引,当不存在时触发ValueError错误

>>> L=[2,3,4,5,6,7,9,0]
>>> L.index(9)
6

L.insert(index,obj) 将某个元素放到列表中指定的位置

>>> L
[2, 3, 4, 5, 6, 7, 9, 0]
>>> L.insert(0,1)
>>> L
[1, 2, 3, 4, 5, 6, 7, 9, 0]
>>> L.insert(2,8)
>>> L
[1, 2, 8, 3, 4, 5, 6, 7, 9, 0]

L.count(x) 返回列表中元素的个数

>>> L
[1, 2, 8, 3, 4, 5, 6, 7, 9, 0, 12]
>>> L.count(3)
1
>>> L.count(1)
1

L.remove(x) 从列表中删除第一次出现在列表中的值

>>> L
[1, 2, 8, 3, 4, 5, 6, 7, 9, 0, 12]
>>> L.remove(3)
>>> L
[1, 2, 8, 4, 5, 6, 7, 9, 0, 12]

L.copy() 复制此列表(只复制一层,不会复制深层对象)

>>> L=[1,2,3,4,5]
>>> L2=L
>>> L2.remove(2)
>>> L
[1, 3, 4, 5]
>>> L2
[1, 3, 4, 5]
>>> L=[2,3,4,5,6]
>>> L2=L[:]
>>> L2.remove(5)
>>> L2
[2, 3, 4, 6]
>>> L
[2, 3, 4, 5, 6]
>>> L
[2, 3, 4, 5, 6]
>>> L2=L.copy()
>>> L2.clear
<built-in method clear of list object at 0x7f052c37d2c8>
>>> L2.clear()
>>> L
[2, 3, 4, 5, 6]
>>> L2
[]

L.append(x) 向列表中追加单个元素

>>> L
[1, 2, 8, 3, 4, 5, 6, 7, 9, 0]
>>> L.append(12)
>>> L
[1, 2, 8, 3, 4, 5, 6, 7, 9, 0, 12]

L.extend(lst) 向列表追加另一个列表

>>> L
[2, 3, 4, 5, 6]
>>> L.extend([11,12,13])
>>> L
[2, 3, 4, 5, 6, 11, 12, 13]
>>> L
[2, 3, 4, 5, 6, 11, 12, 13]
>>> L.append([11,12])
>>> L
[2, 3, 4, 5, 6, 11, 12, 13, [11, 12]]

L.clear() 清空列表,等同于L[:]=[]

L.sort(reverse=False) 向列表中的元素进行排序,默认排序按值的小到大的顺序排列

>>> L
[3, 2, 5, 7, 9, 6]
>>> L.sort()
>>> L
[2, 3, 5, 6, 7, 9]
>>> L
[2, 3, 5, 6, 7, 9]
>>> L.sort(reverse=True)
>>> L
[9, 7, 6, 5, 3, 2]

L.reveser() 列表的反转,用来改变原列表的先后顺序

>>> L
[9, 7, 6, 5, 3, 2]
>>> L.reverse
<built-in method reverse of list object at 0x7f052c430208>
>>> L.reverse()
>>> L
[2, 3, 5, 6, 7, 9]

L.pop([index]) 删除索引对应的元素,如果不加索引,默认删除最后元素

>>> L
[2, 3, 5, 6, 7, 9]
>>> a=L.pop(2)
>>> a
5
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值