【 以下文字转载自 Python 讨论区 】
发信人: iwannabe (I wanna be), 信区: Python
标 题: 这段代码为啥结果是这样?
发信站: 水木社区 (Fri Jan 13 15:14:08 2023), 转信
#!/usr/bin/env python3
def foo(x: int, d: dict = {}) -> dict:
if x == 0:
return d
d[x] = x
return d
def main():
d = foo(1)
print(d)
d = foo(2)
print(d)
d = foo(0)
print(d)
main()
结果是:
{1: 1}
{1: 1, 2: 2}
{1: 1, 2: 2}
这个d为什么还传到函数里了?
--
FROM 124.222.41.*