使用函数作为字典键被认为是不好的形式吗?例如:

def add(a, b):
    return a + b

mydict = {add: "hello"}

最佳答案

是的,这是完全正确的。例如,您可以使用它来存储一个计数器,该计数器显示一个函数被调用的次数:

def hi():
    print('hi')

funcs = {hi: 0}

print(funcs)
# {<function hi at 0x10fb39950>: 0}

for func in funcs:
    func()
    # hi
    funcs[func] += 1

print(funcs)
# {<function hi at 0x10fb39950>: 1}

也就是说,这是一种有点倒退的做事方式。更常见的是使用更简单的类型作为字典键,比如字符串或int。

关于python - 使用功能作为字典键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27915710/

10-15 19:29