`var = [...]`在Python中做什么?

ΛRYΛN

在我的Python程序中,有人告诉我此代码段:

listOfNumbers = input() # (This inputs a space separated list of integers)
listOfNumbers = listOfNumbers.split()

for x in range(0, len(listOfNumbers)):
    listOfNumbers[x] = int(x)

可以用这种单线替换:

listOfValues = [int(x) for x in input().split()]

我是Python的新手,所以我不知道许多缩短代码的技术或方法,因此我开始分析给出的代码段。

我对为什么一部分线被括在方括号中感到困惑: [int(x) for x in input().split()]

什么的[,并]在开始和代码段的结束呢?

vik1245

这就是所谓的列表理解

考虑要将数字行的前5个数字放入列表中。

完整的代码块将写为:

myList = []
for i in range(1, 6):
    myList.append(i)

可以将其简化为:

myList = [i for i in range(1, 6)]
myList
>>> [1, 2, 3, 4, 5]

它具有其他应用程序,但可用于以较少的行集来列出列表。

如您所见,方括号也存在于主列表中,因此突出显示了正在创建列表的事实。

如果您想制作字典,可以更清楚地看到这一点。

myDict = {key: 0 for key in range(1, 6)}
myDict
>>> {1: 0, 2: 0, 3: 0, 4: 0, 5: 0}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章