将变量值作为函数参数传递

时间:2018-03-21 17:02:38

标签: python python-3.x

如何获取list code元素的值?

def test(argu):
print(argu)

code = [5,10,15]
length =len(code)
for i in range(0,length):
   test("code[%d]" %i)

预期产出:

5 
10 
15

实际输出:

code[0]
code[1]
code[2]

2 个答案:

答案 0 :(得分:3)

%只是将参数替换为字符串,字符串不会被重新解释为表达式。

只需使用普通列表索引,而不引用它:

for i in range(0, length):
    test(code[i])

也没有必要使用range,只是直接遍历列表:

for elt in code:
    test(elt)

答案 1 :(得分:1)

test("code[%d]" %i)更改test(code[i])解决了您的问题:

def test(argu):
    print(argu)

code = [5,10,15]
length = len(code)
for i in range(length):
    test(code[i])