我有以下代码:
def all_dsc(x):
dict={'a':x+2,'b':x-2}
return dict
我想在函数之外专门调用这个字典中的键。 smthn喜欢:
all_dsc.dict.keys()
最好的方法是什么?
答案 0 :(得分:2)
您无法从函数外部访问函数中的本地变量。您所能做的就是通过调用函数返回字典对象,您已经这样做了。
调用该函数,然后将调用表达式的结果视为字典:
all_dsc(42).keys()
演示:
>>> all_dsc(42)
{'a': 44, 'b': 40}
>>> all_dsc(42).keys()
['a', 'b']
请注意,如果可以避免,则不应将内置类型的名称用作变量。 dict
是内置类型,因此请尝试在此处使用其他名称:
def all_dsc(x):
mapping = {'a': x + 2, 'b': x - 2}
return mapping
甚至完全避免创建本地,因为这里没关系:
def all_dsc(x):
return {'a': x + 2, 'b': x - 2}