Python:如何打印字典值?

本问题已经有最佳答案,请猛点这里访问。

当我执行代码时,它打印"函数aa in 0x0000…""和所有。

我想打印出aa,a,b,c,d。是可能的吗?

很抱歉问了这么愚蠢的问题,非常感谢。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
def main():
    lunch = {
        0: aa,
        1: a,
        2: b,
        3: c,
        4: d,
        }

    for i in range(len(lunch)):
        print(lunch[i])
def aa():
    print("aa")
def a():
    pass
def b():
    pass
def c():
    pass
def d():
    pass
if __name__ =="__main__":
    main()


如果您想打印函数的name,只需使用__name__属性。

1
print(lunch[i].__name__)

如果您想将其作为函数调用,请使用paranthesis

1
print(lunch[i]())

将这部分更改为:

1
2
for i in range(len(lunch)):
    print(lunch[i].__name__)

此时,您正在打印函数而不是它的名称。


这里有一个简单的代码,演示你想要什么:

1
2
3
4
myDic = {"i" : "me" , "you": "you" , "they" : "them"}
for i in myDic:
    print (i)          # this will print all keys
    print (myDic[i])

1
2
3
4
5
6
7
8
9
10
11
12
13
14
def main():
    lunch = {
        0: 'aa',
        1: 'a',
        2: 'b',
        3: 'c',
        4: 'd',
        }

    for k, v in lunch.items():
        print(v)

if __name__ =="__main__":
    main()

我已经修改了你的代码,因为你想只打印值试试这个。

希望这对您有所帮助!:)