使用配置文件时,python命令行参数'default'的等价是多少?

时间:2016-04-15 17:09:53

标签: python python-3.x command-line-arguments configuration-files

我有一个python脚本的以下命令行参数:

command_parser.add_argument("--wateva", help="Don't care.", default=42)

现在我需要从命令行参数切换到配置文件,因为脚本已经增长了很多,如果没有输入错误就不可能传递所有参数。

如何附加从Python中的配置文件读取的参数的默认值(即config = configparser.ConfigParser()

1 个答案:

答案 0 :(得分:0)

可以通过将它们作为字典传递到ConfigParser构造函数来指定默认值。

import ConfigParser

# New instance with 'bar' and 'baz' defaulting to 'Life' and 'hard' each
config = ConfigParser.SafeConfigParser({'bar': 'Life', 'baz': 'hard'})
config.read('example.cfg')

print config.get('Section1', 'foo') # -> "Python is fun!"
config.remove_option('Section1', 'bar')
config.remove_option('Section1', 'baz')
print config.get('Section1', 'foo') # -> "Life is hard!"