python列表是可变的、但字符串不是_Python列表

列表不同于字符串和元组:列表是可变的——能够改变列表的内容

1、列表函数

1、list(x)函数(事实上是一种类型。而不是一个真正意义上的函数)

转化为列表,当中x能够是其它序列

4ca21208fe62acce35b4c1af3df4b856.png

能够用‘’.join(somelist)将一个由字符组成的列表转化为字符串

16e5b12b4a44bcb58052875e6be264e6.png

2、列表方法

方法定义:方法是一个和某些对象有紧密联系的函数,对象可能是列表、数字、字符串等

方法调用:对象.方法(參数)

1、append方法

用于在列表末尾追加新的对象,直接改动原列表a(能够用分片赋值实现)

65f8070df0478017119a03861d82d227.png

2、count方法

统计某个元素在列表中出现的次数。

dc2630532ab403000b6c8e41ac33ddaa.png

注意:y 和 'y' 的差别,y 是变量,‘y’ 是元素

3、extend方法

在列表的末尾一次性追加还有一个序列的多个值。直接改动原列表a(能够用分片赋值实现)

3c98b70628be1f0676fdb345f016026a.png

而a+b尽管能得到相同的结果,但并没有改动a,而是返回一个新的列表

c23ca7ce677435d47eb81af43fa871e7.png

4、index方法

用于从列表中找出某个值第一个匹配项的索引位置。当该值不存在时,异常出错

9a8576279d1686d0773a087a68cd1ca8.png

5、insert方法

将对象插入到列表中,(能够用分片赋值实现),改动原列表

9407fe731bd12e18d555efeac49ce1b7.png

6、pop方法

移除列表中的一个元素(默认是最后一个),而且返回该元素的值。

pop方法是唯一一个既能改动列表又返回元素值(除了None)的列表方法

be128850d050294972d5ed156fc00fd7.png

f7ba5629547a017c6da9e5afdd460f0c.png

能够加參数实现删除。及实现栈的先进先出:list.insert(0,x)——list.pop()或者list.pop(0)——list.pop()

7、remove方法

用于移除列表中某个值得第一个匹配项,找不到时,异常出错。

改动原列表

bb55c247a3622e7e74a4624d0e85bce0.png

8、reverse方法

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

213a714dbc61cd4120d4958e09dfb0ab.png

9、sort方法

在原位置上对列表进行排序,原位置上意味着改变原来的列表。

不返回值

d825a74e39cafa7f7e7f5893db91b356.png

注意:假设须要返回一个排好序的副本。则先复制(y = x[:]),然后对y排序;不要用y=x。这样对y操作时,x也会变

8f00b22d6abfa60b453d117165584f8d.png

还有一种方法——利用sorted()函数,且这个函数能够作用于不论什么序列。但总返回一个列表。

c1a3ec50882ef4b90d5ca3e81aff9f49.png

ec8b84fffdd6cef01af6dc9d643a066b.png

10、高级排序

假设希望能按特定的方式进行排序(而不是sort方法默认方式)。那么能够通过compare(x,y)的形式自己定义比較函数。

compare(x,y):在xy时,返回整数;x=y时,返回0定义好该函数后,能够提供给sort方法作为參数。

以内建函数cmp(x,y)为例:

03770f4d4c0cb6354b9142d225ee71f1.png

注:sort还有两个可选的參数——key和reverse、

參数key和參数cmp类似——必须提供一个在排序过程中使用的函数。然而,该函数并非直接用来确定对象的大小,而是为每一个元素创建一个键,然后全部元素依据键来排序。比方:若要依据元素的长度来排序。那么能够使用len作为键函数

2d4caaee674e81b93f23b0df1286e734.png

另外一个參数reverse是简单的布尔值,用来知名是否要反向排序

b2654aa9917b3485b78b8f6b045786ad.png

3、列表操作

索引、分片、连接、乘法等

注意:列表是可变的。能够改动的。所以本届介绍一些能够改变列表的方法。

1、改变列表:元素赋值

214c5b8f612b1402aa672624eac5d25c.png

注意:不能为一个不存在的元素赋值。

7d1d527fee57acb7f0666ad1a412404a.png

2、删除元素

del语句

d69409e8d9b565efc80d10f59a9b736b.png

3、分片赋值

0423f57e6a8db86513680ab1dd1c024c.png

使用分片赋值,能够使用与原序列不等长的序列将分片替换。

a52befb59665a6fd2b34c09812def973.png

使用分片赋值。插入新的元素。

0a700c9602d3cfdb287e55843704ba12.png

使用分片赋值,删除元素

e1cbefa16b4901b41b5d66999ad14fc6.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值