Python 与文件输入有关的问题
我遇到了一个问题,我想听听你们的意见 我正在使用py2neo编写一个Neo4J应用程序。我想读取一个文件并使用该文件创建节点和关系 我遇到的问题是,使用下面代码输入的文件将行作为字符串返回Python 与文件输入有关的问题,python,python-2.7,Python,Python 2.7,我遇到了一个问题,我想听听你们的意见 我正在使用py2neo编写一个Neo4J应用程序。我想读取一个文件并使用该文件创建节点和关系 我遇到的问题是,使用下面代码输入的文件将行作为字符串返回 file = "../create_db" dbFile=open(file,'r') 我需要的是,不是把它作为一根线拿回来,而是把它生下来。 目前的问题是我想要: graph_db.create(node({'Id':'1', 'Description':'Computer'})) 但我得到: grap
file = "../create_db"
dbFile=open(file,'r')
我需要的是,不是把它作为一根线拿回来,而是把它生下来。
目前的问题是我想要:
graph_db.create(node({'Id':'1', 'Description':'Computer'}))
但我得到:
graph_db.create("node({'Id':'1', 'Description':'Computer'})")
有没有办法让文件输入原始?也许有个图书馆能把它原封不动地还给你
提前感谢,,
Jiar您的输入文件似乎包含代码语句或部分代码语句 您可以使用eval内置函数执行语句,并将结果传递给graph_db.create函数 但是,您应该注意,这允许执行任意代码,即输入文件成为执行脚本的一部分,并且应被视为代码的一部分,即不要使用不受信任的输入文件。您也可以检查模块。虽然我不知道这是否适用于你的情况,但我的情况是: ast.literal\u evalnode\u或字符串 安全地计算表达式节点或Unicode或Latin-1编码字符串 包含Python表达式的。 提供的字符串或节点只能由以下Python文本结构组成:字符串, 数字、元组、列表、dicts、boolean和None 这可以用于安全地计算包含Python表达式的字符串 来自不受信任的来源,无需自己解析值 所以,如果你对文件有一些控制权,只使用dict部分
可以使用eval。也请检查此项。您的意思是该文件包含代码语句还是部分语句?也许可以看看eval函数……非常感谢,它起作用了。添加一个答案,这样我就可以给你一些学分了。