San*_*a S 2 python function-call python-3.x
a = 0
def f():
global a
a = 1
print(a)
print(a, f(), a)
Run Code Online (Sandbox Code Playgroud)
上述代码的输出结果如下:
1
0 None 1
Run Code Online (Sandbox Code Playgroud)
为什么f在打印第一个参数之前调用函数a?为什么是第一个参数的值0,即使在函数调用之后?
你得到的输出是:
1
0 None 1
Run Code Online (Sandbox Code Playgroud)
当你调用print()它时,首先计算要打印的元素.正如你在print(a)里面f()所获得的那样1.然后,它开始打印.调用函数之前的值a是0.当你打印一个不返回任何东西的函数时,你会得到None.当您在全局更改值1时,最终会得到结果.
| 归档时间: |
|
| 查看次数: |
55 次 |
| 最近记录: |