python的列表用来干什么_列表中的for循环在Python中做什么?

您询问的代码行正在使用list comprehension创建一个列表,并将此列表中收集的数据分配给self.cells。相当于self.cells = []

for i in xrange(region.cellsPerCol):

self.cells.append(Cell(self, i))

说明:

为了最好地解释这是如何工作的,几个简单的例子可能有助于您理解您拥有的代码。如果要继续使用Python代码,您将再次遇到列表理解,您可能希望自己使用它。

注意,在下面的示例中,这两个代码段都是等价的,因为它们创建了存储在列表myList中的值的list。

例如:myList = []

for i in range(10):

myList.append(i)

相当于myList = [i for i in range(10)]

列表理解也可能更复杂,例如,如果您有一些条件确定值是否应该进入列表,那么您也可以使用列表理解来表达这一点。

此示例仅收集列表中的偶数值:myList = []

for i in range(10):

if i%2 == 0: # could be written as "if not i%2" more tersely

myList.append(i)

以及相应的列表理解:myList = [i for i in range(10) if i%2 == 0]

最后两项说明:你可以有“嵌套”列表,但它们很快变得难以理解:)

列表理解将比等价的for循环运行得更快,因此通常是关心效率的普通Python程序员的最爱。

好的,最后一个示例显示,您还可以将函数应用于列表中正在迭代的项。它使用float()将字符串列表转换为浮点值:data = ['3', '7.4', '8.2']

new_data = [float(n) for n in data]

给出:new_data

[3.0, 7.4, 8.2]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值