python列表常见操作技巧汇总(Python列表的操作)

网友投稿 449 2022-08-27


python列表常见操作技巧汇总(Python列表的操作)

python的一大特点就是语法简洁,代码量少,除了内置函数和模块赋予的强大功能外,其丰富的语法糖也是减少代码量的关键,本文针对list这一数据结构,汇总了常见的操作技巧

1. 遍历列表

遍历指的是循环处理列表中的每一个元素,最基本的遍历方法就是​​for in​​循环了,用法如下

a = [1, 2, 3, 4, 5]for i in a: print(i)

另外,针对两种特殊的遍历场景,python还提供了简洁的处理方法,场景1,同时遍历下标和对应的元素。在其他语言中,解决思路是通过遍历下标,再通过下标获取对应的值,在python中,通过​​enumerate​​函数可以轻松实现同时获取下标和对应的值,用法如下

for i, v in enumerate(a): print(i, v)

场景2,同时遍历两个list,  在其他语言中同样也是通过遍历下标来实现,在python中通过​​zip​​函数实现,代码量更少,用法如下

a = [1, 2, 3]b = [4, 5, 6]for x, y in zip(a, b): print(x, y)

2. 列表的生成

对于列表元素的遍历,一个经典的使用场景是遍历一个列表,对每个元素稍加处理,结果另存为一个新的列表,你可能会写出如下代码

new =[ ]for i in old: new.append(i + 1)

对于上述场景,python中有更加简洁的实现方式,第一种方法称之为列表生成式,最基本的用法如下

>>> a = [1, 2, 3, 4, 5]>>> b = [i ** 2 for i in a]>>> b[1, 4, 9, 16, 25]

上述代码遍历列表​​a​​, 求每个元素的乘方,将结果存为列表b, 可以看到,一行代码就可以搞定。列表生成式还可以更加强大,比如添加过滤条件,用法如下

>>> a = [1, 2, 3, 4, 5]>>> b = [i ** 2 for i in a if i % 2 == 0]>>> b[4, 16]

上述代码同样是遍历列表​​a​​, 但是只筛选其中的偶数项来处理。列表生成式还可以在生成结果时添加简单的逻辑判断, 用法如下

>>> a = [1, 2, 3, 4, 5]>>> b = [i ** 2 if i % 2 == 0 else i ** 3 for i in a]>>> b[1, 4, 27, 16, 125]

列表生成式支持多层for循环, 用法如下

>>> a = [1, 2, 3]>>> b = [4, 5, 6]>>> c = [m * n for m in a for n in b]>>> c[4, 5, 6, 8, 10, 12, 12, 15, 18]

列表生成式可以嵌套,用法如下

>>> c = [[m * n for m in a]for n in b]>>> c[[4, 8, 12], [5, 10, 15], [6, 12, 18]]

对于简单的循环加逻辑判断,用代码生成式是最佳选择。

3. 解列表

将列表中的元素赋值给各个变量,称之为解列表,基本用法如下

>>> a, b, c, d = [1, 2, 3, 4]

上述代码将列表中的元素依次赋值给4个变量,可以看到,这种写法在处理个数较少的列表是比较适用,如果我们只想要其中的某几个值,可以用双下划线​​__​​作为变量名,对应的值就会被丢弃,用法如下

a, __, __, d = [1, 2, 3, 4]

在此基础上,还有一种进阶用法,称为星号解压缩,基本用法如下

a, *__, d = [1, 2, 3, 4]

星号起到了通配符的作用,可以匹配任意个元素,上述代码中的星号匹配中间的2个变量。

当然,对于列表的操作技巧远不止这几种,这里列出的几种比较基础,掌握起来比较轻松。

·end·

—如果喜欢,快分享给你的朋友们吧—

关注我们,解锁更多精彩内容!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python中字典dict的操作技巧汇总(dict python用法)
下一篇:支持SpEL表达式的自定义日志注解@SysLog介绍
相关文章

 发表评论

暂时没有评论,来抢沙发吧~