这里有新的,有点新的Python。我有一个空白,并希望得到一些指导。
我正在尝试编写一个嵌套列表,然后编写一个for循环来打印一个逗号分隔的数字列表,使用每个列表中的相同指示来配对数字。我的代码如下(2.7.14):
FirstNumbers = [1, 2, 3]
SecondNumbers = [4, 5, 6]
ThirdNumbers = [7, 8, 9]
NestedNumbers = [FirstNumbers, SecondNumbers, ThirdNumbers]
for i in range(0, 3):
for each_number in NestedNumbers:
print each_number[i],
#Output
1 4 7 2 5 8 3 6 9
我目前的问题是尝试将数字读取[1,4,7]等等。我很感激任何指导。
谢谢
答案 0 :(得分:0)
我认为你需要空列表,所以你可以将数字附加到那个
FirstNumbers = [1, 2, 3]
SecondNumbers = [4, 5, 6]
ThirdNumbers = [7, 8, 9]
NestedNumbers = [FirstNumbers, SecondNumbers, ThirdNumbers]
m = []
for i in range(0, 3):
k = []
for each_number in NestedNumbers:
k.append(each_number[i])
m.append(k)
输出m:[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
答案 1 :(得分:0)
你需要在“for each_number”部分之后放置“print”[“after”for i in range(0,3)“”和print“]” 这样就会打印出来: [1 4 7] [2 5 8] [3 6 9] 现在你需要在“print each_number [i]”之前插入一个“,” 你最终会得到: [,1,4,7] [,2,5,8] [,3,6,9]你需要在第一次运行中不使用print“,”,因为它是在第一个数字之前打印逗号。
您需要将第二个for语句更改为不通过“NestedNumbers”,因为您无法知道它是否是第一个,而是“range(0,len(NestedNumbers))”,以便您可以查看如果是第一次迭代,是否需要添加逗号。 将其更改为:
UITextField
现在它将打印:
[1,4,7] [2,5,8] [3,6,9]
答案 2 :(得分:0)
试试这个
queriedcode|result
23 | 27
23 | 30
23 | 45
对import itertools
for n in itertools.chain(*zip(FirstNumbers,SecondNumbers,ThirdNumbers))
print n,
的调用将所需列表组合为元组列表。然后zip
将此展平为一个列表。
如果你真的想要这个输出:
itertools.chain
只需打印调用[(1, 4, 7), (2, 5, 8), (3, 6, 9)]