我找不到对以下约定的PEP引用:
def dict_to_var(dictionary:dict) -> None:
for variable, value in dictionary.items():
if variable not in globals():
globals()[variable] = value
其中假定 dictionary
中的每个键都是一个(可变名称合法)字符串(尽管在python dict
中,键可以包含tuple
和将这些字符串值作为变量公开到globals
上下文中(因为将其暴露给函数内部的locals()
不会使这些值不能在该函数调用之外访问)。
例如:
example = {'a': 'string', 'b': True}
dict_to_var(example)
print(a, b)
# 'string', True
为清楚起见,我假设一个人不应该这样做,并且如果太懒了以致无法编写dict[var]
,则无法通过var = dict[var_name]
显式公开所需的变量。
但是,如果有人可以为此找到PEP基础,我将不胜感激。