【问题标题】:run python script with an ini file使用ini文件运行python脚本
【发布时间】:2012-07-18 14:32:45
【问题描述】:

我想用不同的 ini 文件运行一个 python 脚本

我将一些变量放在 ini.py 中,然后我想用这个 inifile 运行我的 program.py。

我尝试了类似的方法:

批量-> program.py ini

sys.argv[1]
from sys.argv[1] import *

eval('from '+sys.argv[1]+' import *')

但这不起作用。

现在我写了:

import sys
f = open('outp.py','w')
f.write("from "+sys.argv[1]+" import *\n")
f.write("print x\n")
with open('program.py', 'r') as content_file:
    content = content_file.read()
f.write(content)
f.close()

execfile( "outp.py")

基本上用额外的导入语句重写我的程序文件.... 我希望有更简单的方法吗?! (不一定是批量) 谢谢

【问题讨论】:

    标签: python ini


    【解决方案1】:

    解析INI文件,可以使用Python中的configparser标准库模块。

    【讨论】:

      【解决方案2】:

      您可以使用__import__ 函数。

      my_module=__import__('os')  #basically the same as `import os as my_module`
      

      当然,你不能这样做 from blah import *,但是很多人会争辩说你不应该在生产代码中使用这个习惯用法。

      但是,如果您只想设置一些变量,则应考虑使用命令行解析实用程序或配置文件解析器(configparserargparseoptparse 都在脑海中——所有这些都在标准库),因为这将阻止用户运行不受信任的代码。

      【讨论】:

        猜你喜欢
        • 2013-11-03
        • 1970-01-01
        • 2019-03-09
        • 1970-01-01
        • 2021-03-11
        • 2015-07-05
        • 2018-05-11
        • 2020-08-19
        • 2020-09-14
        相关资源
        最近更新 更多