我正在学习python,现在正在学习字典。
我想我理解的很好,但是我需要帮助解决这个代码:
fib = {1: 1, 2: 1, 3: 2, 4: 3}
print(fib.get(4, 0) + fib.get(7, 5))答案是8。但是为什么呢?应该是3,对吧?因为7和5甚至不存在于字典中,它应该返回None。
发布于 2020-11-28 21:14:31
get的第二个参数是默认值:如果没有找到键,它将返回第二个参数而不是None。因此,fib.get(7, 5)不会找到7,默认为5,剩下的3+5是8。
发布于 2020-11-28 21:33:37
你可以在这里看到,fib.get(7,7)提供了7的输出,因为第二个参数被认为是默认值,它在那里给出了7,就像上面fib.get(6,6)给出了6作为输出。所以当你提供fib.get(7,5)时,第二个参数出现在那里,输出加上第一个fib.get(4,3)的值是3,fib.get(4,0) +fib.get(7,5)]的最终输出将是8。图像让你更清晰
https://stackoverflow.com/questions/65049923
复制相似问题