bmp*_*ini 4 python yaml nonetype
假设我有以下yaml文件,第4行的值应为None.如何将字符串转换'None'为None?
CREDENTIALS:
USERNAME: 'USERNAME'
PASSWORD: 'PASSWORD'
LOG_FILE_PATH: None <----------
Run Code Online (Sandbox Code Playgroud)
我已经有了这个:
config = yaml.safe_load(open(config_path, "r"))
username, password, log_file_path = (config['CREDENTIALS']['USERNAME'],
config['CREDENTIALS']['PASSWORD'],
config['LOG_FILE_PATH'])
Run Code Online (Sandbox Code Playgroud)
我想知道是否有一种pythonic方法来做到这一点,而不是简单地做:
if log_file_path == 'None':
log_file_path = None
Run Code Online (Sandbox Code Playgroud)
NoneYAML文件中的值实际上不是犹太洁食YAML,因为YAML使用缺少值来表示None.所以如果你刚刚使用了正确的YAML,你的麻烦就会结束:
In [7]: yaml.load("""
...: CREDENTIALS:
...: USERNAME: 'USERNAME'
...: PASSWORD: 'PASSWORD'
...: LOG_FILE_PATH:
...: """)
Out[7]:
{'CREDENTIALS': {'PASSWORD': 'PASSWORD', 'USERNAME': 'USERNAME'},
'LOG_FILE_PATH': None}
Run Code Online (Sandbox Code Playgroud)
注意它读缺乏的LOG_FILE_PATH作为None,而不是'None'.
| 归档时间: |
|
| 查看次数: |
1070 次 |
| 最近记录: |