Discuss / Python / 请问字典的花括号后面紧跟着中括号是什么意思?

请问字典的花括号后面紧跟着中括号是什么意思?

Topic source

from functools import reduce def fn(x, y): ... return x * 10 + y ... def char2num(s): ... return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[s] ... reduce(fn, map(char2num, '13579')) 13579

上面这第二个return之后紧接的是个字典吧,字典后面紧接着[s],这起到什么作用呢?

书生Maple

#2 Created at ... [Delete] [Delete and Lock User]

用另一种方式也许你就会明白了.

dict = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}
dict['0'] = 0
dict['1'] = 1
dict['2'] = 2
....
dict['9'] = 9

同问,我也没看懂,求详细解答

感觉是 前面return回来的是dict[s],

map作用的时候,s是一个字符串'13579',得到的结果是

([dict['1'],dict['3'],dict['5']],dict['7'],dict['9'])

这样就调用了每个value值([1,3,5,7,9])

最后reduce就得到了13579


  • 1

Reply