我是python的新手,我试图找出是否可以将枚举的计数分配给它所使用的变量。目前我有一些事情要做。
for i, grb in enumerate(results):
try:
grb_date = (re.sub('[A-Z]','',grb.name))
end_results = [i, grb_date]
print (end_results)
except:
print ('No name')
pass
输出如下所示
[935, '120612']
[936, '120616']
[937, '120618']
[938, '120618']
[939, '120619']
最终目标是基本上有一个输入功能,应该等同于正确的数字,但我最终需要' i'值(左侧)与代码的下一部分。有没有办法做到这一点?
答案 0 :(得分:1)
根据我从下面的评论中理解,您不需要访问上一个循环中的数字,但需要它来访问第二列的ID。
如果是这种情况,我会使用字典:
data = {}
for i, grb in enumerate(results):
try:
grb_date = (re.sub('[A-Z]','',grb.name))
end_results = [i, grb_date]
data[str(i)] = grb_date # this is the important bit
print (end_results)
except:
print ('No name')
现在您可以使用数字(i)直接引用grb_date:
while 1:
attempt = input('enter the record you want: ') # I'm assuming you are using Py 3.x, otherwise use raw_input
try:
print(data[attempt])
except KeyError:
print('ID does not exist')