我有一个文本文件/etc/default/foo
,其中包含一行:
FOO="/path/to/foo"
在我的python脚本中,我需要引用变量FOO。
与我在/etc/default/foo
中所做的一样,将文件bash“源”到我的python脚本中最简单的方法是什么?
. /etc/default/foo
发布于 2016-05-01 03:10:31
您可以使用execfile
execfile("/etc/default/foo")
但请注意,这将评估文件的内容,因为它是您的程序源代码。除非你能完全信任它的来源,否则这是一个潜在的安全隐患。
这也意味着该文件需要是有效的python语法(您给出的示例文件是)。
发布于 2018-07-09 01:14:10
与@jil相同的答案是特定于某些历史版本的Python的。
在现代Python (3.x)中:
exec(open('filename').read())
取代2.x中的execfile('filename')
发布于 2016-05-01 03:26:29
请记住,如果您有一个包含此内容的“文本”文件,并且文件扩展名为.py,则始终可以这样做:
import mytextfile
print(mytestfile.FOO)
当然,这假设就Python而言,文本文件在语法上是正确的。在我参与的一个项目中,我们做了类似的事情。将一些文本文件转换为Python文件。这很古怪,但也许值得考虑。
https://stackoverflow.com/questions/36959031
复制相似问题