list列表生成式 | python

1 结构

在一个中括号里包含一个表达式,然后是一个for语句,然后是0个或多个for或者if语句。

variable = [变量(out_exp)for 变量(out_exp) in input_list if out_exp == 2]
变量是一个循环体,不单单只是一个变量。

2 例子

下面通过例题来对列表生成式进行深入的理解。

  1. 生成一个列表,列表元素分别为 [11,22,33……nn],假设n = 10。
    若用一般方法实现代码如下:
    在这里插入图片描述

若用列表生成式:
在这里插入图片描述

在这里插入图片描述
(2)生成一个m行n列数组

dp = [[0 for _ in range(n)] for _ in range(m)]
[0 for i in range(4)]      #[0,0,0,0]
dp = [[0 for _ in range(2)] for _ in range(4)]    #[0 for _ in range(2)]生成[0,0],将其作为一个循环体,再循环4[[0, 0], [0, 0], [0, 0], [0, 0]]

在这里插入图片描述

3 列表切片

result[::-1]​
表示从列表的最后一个元素开始,以逆序方式遍历整个列表,并返回一个除了倒序排列之外,列表切片还可以进行多种典型操作。以下是一些常见的列表切片用法:

  1. 切片列表中的一部分元素:

    • list[start:end]:从索引 start(包含)到索引 end(不包含)的元素。
    • list[start:]:从索引 start(包含)到列表末尾的所有元素。
    • list[:end]:从列表开头到索引 end(不包含)的所有元素。
    • list[:]:整个列表的副本,等同于 list
  2. 以指定的步长切片列表中的元素:

    • list[start:end:step]:从索引 start(包含)到索引 end(不包含)的元素,并按照步长 step 进行遍历。
  3. 利用负数索引进行倒序切片:

    • list[::-1]:从列表的最后一个元素开始,以逆序方式遍历整个列表。
  4. 复制列表并创建新的列表对象:

    • new_list = list[:]:使用切片操作来复制列表,生成一个全新的列表对象。
  5. 切片赋值:可以通过切片将新的元素值分配给指定位置的切片部分,用以修改列表中的元素。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值