Python 如何在for循环中分配索引?
我想用姓名打印130以下的号码 我有这样的数据框Python 如何在for循环中分配索引?,python,Python,我想用姓名打印130以下的号码 我有这样的数据框 name = ["a","b","c","d","e","f","g","h"] h = [125,120,135,115,115,130,145,130] 我已经试过我的代码了 for i in h: if i < 130: un_130 = [name[i], h[i]] #print(i, un_130) print(i) 但是当我尝试使用print(I,un_30)中
name = ["a","b","c","d","e","f","g","h"]
h = [125,120,135,115,115,130,145,130]
我已经试过我的代码了
for i in h:
if i < 130:
un_130 = [name[i], h[i]]
#print(i, un_130)
print(i)
但是当我尝试使用print(I,un_30)
中的名称打印时,出现了索引错误
有什么建议吗?您可以使用enumerate
for idx,i in enumerate(h):
if i < 130:
print(name[idx],h[idx])
对于idx,枚举中的i(h):
如果i<130:
打印(名称[idx],h[idx])
注意:只要name
和h
具有相同的长度就可以使用enumerate
for idx,i in enumerate(h):
if i < 130:
print(name[idx],h[idx])
对于idx,枚举中的i(h):
如果i<130:
打印(名称[idx],h[idx])
注意:只要
name
和h
具有相同的长度您就可以使用zip()
并行迭代:
邮政编码中的i,n(h,名称):
如果i<130:
打印(i,n)
(我并不特别喜欢变量的命名,尤其是
I
,但我选择与问题中使用的命名保持一致。)您可以使用zip()并行迭代:
邮政编码中的i,n(h,名称):
如果i<130:
打印(i,n)
(我并不特别喜欢变量的命名,尤其是
I
,但我选择了与问题中使用的命名保持一致。)好的,所以它不像前面提到的那样非常python,但是您可以简单地使用python的range方法进行迭代,以模拟for循环的行为,就像其他编程语言一样:
for i in range(0, len(h), 1):
if h[i] < 130:
un_130 = [name[i], h[i]]
print(i, un_130)
print(i)
适用于范围内的i(0,len(h),1):
如果h[i]<130:
un_130=[name[i],h[i]]
打印(i,un_130)
印刷品(一)
但是,其他答案中提到的其他函数(如enumerate或zip)通常更适合在python中使用。好的,因此它不像前面提到的那样非常python,但您可以简单地使用python的range方法进行迭代,以模拟for循环的行为,就像其他编程语言一样:
for i in range(0, len(h), 1):
if h[i] < 130:
un_130 = [name[i], h[i]]
print(i, un_130)
print(i)
适用于范围内的i(0,len(h),1):
如果h[i]<130:
un_130=[name[i],h[i]]
打印(i,un_130)
印刷品(一)
但是,其他答案中提到的其他函数,如enumerate或zip,通常更适合在python中使用。在发布之前运行代码。在发布之前运行代码。这不是等效的,python中的
for
循环在其他语言中的作用类似于for each
循环。您可以为行为模拟经典的,但这并不是真正的python方式。正如其他答案所显示的那样,在这个例子中这是不必要的。哦,我同意这不是“蟒蛇式的方式”,但我只是试图复制这种行为。请原谅我对python的一些独特功能缺乏了解。也许在你的帖子中有一个更好的方法,你可以模仿你想使用的行为,但是在python中,你更喜欢的方法是“某某”。在我的观点中,这将是一个非常好的答案。它不是等价的,python中的for
循环在其他语言中就像是for each
循环。您可以为
行为模拟经典的,但这并不是真正的python方式。正如其他答案所显示的那样,在这个例子中这是不必要的。哦,我同意这不是“蟒蛇式的方式”,但我只是试图复制这种行为。请原谅我对python的一些独特功能缺乏了解。也许在你的帖子中有一个更好的方法,你可以模仿你想使用的行为,但是在python中,你更喜欢的方法是“某某”。那么,在我的演讲中,这将是一个非常好的答案。请问您为什么不喜欢变量命名?i
不是一个众所周知且常用的索引变量名吗?@user3053452原因是i
不是索引。@user3053452它是在其他语言中,作为计数器变量,但在这种情况下,没有像经典的中那样进行计数。
loopah我的错,我在上面的答案中查看enumerate()
已被使用,但有点混乱。你完全正确,变量的命名很糟糕。请问你为什么不喜欢变量命名?i
不是一个众所周知且常用的索引变量名吗?@user3053452原因是i
不是索引。@user3053452它是在其他语言中,作为计数器变量,但在这种情况下,没有像经典的中那样进行计数。
loopah我的错,我在上面的答案中查看enumerate()
已被使用,但有点混乱。你完全正确,变量的命名很糟糕。