我看到可以在作用域内定义变量,然后在该作用域之外引用它。例如,以下代码可以运行:
if condition:
x = 5
else:
x = 10
print x
然而,这让我感到有些奇怪。如果你尝试在C语言中做这件事,变量X将无法正确地作用域:
if(condition) { int x = 5; }
else { int x = 10; }
print x; // Doesn't work: x is unavailable!
解决方法,在C语言中,是先声明X,然后再想要做什么:
int x;
if(condition) { x = 5; }
else { x = 10; }
print x; // Works!
因此,在Python中,我的本能是编写以下代码:
x = None
if condition:
x = 5
else:
x = 10
print x
然而,我意识到Python并不要求我这样做。有什么建议吗?在这种情况下是否有样式指南?