























eval函数直接传入一个字符串报错,代码如下:
# -*- coding: utf-8 -*- a = 'pythn66' print(eval(a))
Traceback (most recent call last):
File "D:/pyscript/py3script/test.py", line 3, in
print(eval(a))
File "", line 1, in
NameError: name 'pythn66' is not defined
为什么呢?因为你虽然传入的是字符串,但是这个字符串是python66,而python66在python中不是一个值(也不是表达式),没办法执行,所以报错!解决办法有2种,
1 你定义一个变量python66且赋值,
2 直接给python66包裹两层字符串,这样实际上传入的是带有引号的'python66',在python中这就是一个实实在在的字符串值了。
代码如下,自己体会吧!
# -*- coding: utf-8 -*- python66 = 'python66' print(eval(python66)) a = '"python66" ' print(eval(a))
python66 python66
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。