【发布时间】:2015-11-10 09:27:48
【问题描述】:
我是 python 单线循环的新手。
我希望用户将数据输入到二维列表中,同时提醒他他们将输入的数据索引。 我的代码是:
flag=0
x=[[int(input("enter the "+ str(flag)+ "number:")) flag+=1 for x in range(0,col)]for y in range(0,row)]
以上代码显示语法错误。我应该如何在 for 循环的一行中增加标志值。
接下来我想在二维列表中搜索整数值
x=[[0,3,2],[1,1,1],[9,2,2]]
for i,j in enumerate(x):
try:
y=j.index(1)
except ValueError:
continue
print(i,y)
上面的代码适用于单个项目搜索,但我想要列表中每个 1 的索引。而上面的代码只返回它遇到的第一个“1”的索引,即“1 0”
提前谢谢你。
【问题讨论】:
-
请轻视这条评论,因为我还没有花太多时间回答您的问题。但是你有没有考虑过让你的代码在没有单行代码的情况下工作?扩展你的代码,一旦它工作,如果你必须把它修剪成一个单行。
-
@Torxed 是的,我已经做到了,它工作得很好,但这就是我无法缩小它的问题。顺便说一句,感谢您的建议
-
亲爱的,你能贴出那个代码吗?我们更容易阅读扩展的代码块,我们可以根据您上面的尝试为您缩小它。
-
@Torxed 我得到了答案,但还是非常感谢。 :)
标签: python arrays python-3.x multidimensional-array