eval 用来执行一个字符串表达式,并返回表达式的值。 input_ = eval(input('Provide some data here: ')) # 如果输入下面的字符串且被执行,非常危险 __import__('os').system('rm -rf /a-path-you-really-care-about') ast.literal_eval 安全地评估表达式节点或包含 Python 文字或容器显示的字符串。提供的字符串或节点只能由以下 Python 文字结构组成:字符串、字节、数字、元组、列表、字典、集合、布尔值、无、字节和集合。 ref: Using python’s eval() vs. ast.literal_eval()Eval really is dangerous