x=eval(input("hello"))
是什么意思,它不是代替eval()而不是int吗?我认为x是一个属于某个确定其类型的类的变量,eval是否包含所有已知的类,如int float complex ...?
答案 0 :(得分:4)
eval
将参数计算为python代码。它可以是任何有效的python表达式。它可以是函数,类,值,循环,恶意......
答案 1 :(得分:0)
eval()
将解释用户在input()
期间输入的内容。因此,如果用户在本地人中键入x+1
x等于1,则会输出2
(见下文)。
文档摘录:
表达式参数被解析并作为Python表达式(技术上讲,条件列表)使用全局和本地字典作为全局和本地命名空间进行评估。
>>> x = 1 >>> print eval('x+1') 2
它可能很危险,因为用户可以键入他想要的任何内容,例如......某些Unix命令。 不要使用,除非你知道自己在做什么(即使这样,也会导致严重的安全漏洞)。