python exec问题:为什么不能连接str和int对象

2024-04-25 08:37:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Python2.6和2.7下测试了它们。
See this is OK:
>;>>exec'e=1'
>;>>exec'f=2'
>;>>exec'g=e+f'
>;>>打印g
3

But this returns error:
>;>>cont=['e=1','f=2','g=e+f']
>;>>对于cont中的e:
... 尝试:
…执行官
... 除了例外,em:
…打印em

无法连接'str'和'int'对象

那为什么呢? 谢谢!在


Tags: 对象gtisokerrorthisreturnsbut
2条回答

您使用e作为循环的变量。当然,它包含一个字符串,因为列表就是这个字符串。改用另一个名字。在

你的变量名选择不当。您使用e作为for循环变量和{}中的int变量。第一次通过循环时,e == 'e=1';然后调用exec e,并e == 1;然后下一次通过循环,e == 'f=2',依此类推。当最后一个表达式'g=e+f'execed时,e不再是int,而是字符串'g=e+f'。在

相关问题 更多 >

    热门问题