下面的代码是我试图让for循环迭代并返回每个项的值:
def number(lines):
#your code here
c=0
for i in lines:
return'[{}:{}]'.format(str(c+1),i)
print(number(['a','b','c']))
所以我放在代码中,并期望它返回['1:a','2:b','3:c']
但它只返回['1:a']
主要有两个问题:
- 在循环的第一次迭代中使用
return
- 您没有增加变量
c
def number(lines):
c = 1
return_value = []
for line in lines:
return_value.append('[{}:{}]'.format(str(c),line))
c += 1
return return_value
print(number(['a', 'b', 'c']))
另一个选项是
def number(lines):
return ['[{}:{}]'.format(str(c), line) for c, line in enumerate(lines,1)]
print(number(['a', 'b', 'c']))