我有一个空的YAML文件,当我加载它时,我想将其作为空字典加载。例如,我有
import yaml
with open('an_empty_file.yml', 'r') as config_file:
config=yaml.load(config_file)
print(config)
None
事实证明,这yaml.load(config_file)
将返回一个NoneType
对象,我认为这很有意义。是否有简单的方法来返回空字典?
如果返回None
,则可以使用,or
因此如果yaml.load
返回None ,则默认情况下,您的配置将保留一个空字典:
config = yaml.load(config_file) or {}
最终,这里发生的事情从左侧开始:
现在,我们在config中分配一个值。我们正在声明分配yaml.load(config_file)
给config,但是,通过使用or
,我们在此语句中要说的是,如果它(yaml.load
)计算为None或False条件(即,在本例中为None),则我们将分配{}
给配置。
快速演示,以空字符串作为config_file:
>>> import yaml
>>> config_file = ''
>>> config = yaml.load(config_file) or {}
>>> print(config)
{}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句