Python 是否很像 PHP,因为我可以调用一个变量,如果它不存在,它将被创建?或者我需要声明它们?
问问题
1153 次
1 回答
7
在 PHP 中,如果你调用一个变量并且它不存在,你会得到Notice: Undefined variable
. 这不会创建它 - 再次执行相同的操作仍会返回警告。
php > echo $some_uninitialized_var;
PHP Notice: Undefined variable: some_uninitialized_var in php shell code on line 1
php > echo $some_uninitialized_var;
PHP Notice: Undefined variable: some_uninitialized_var in php shell code on line 1
在 Python 中,如果你调用一个变量并且它没有被初始化,你会得到一个NameError
. 同样的事情 - 它不会被创建 - 在NameError
你真正初始化它之前你会得到。
>>> print(some_uninitialized_var)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'some_uninitialized_var' is not defined
>>> print(some_uninitialized_var)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'some_uninitialized_var' is not defined
没有声明的初始化:
但是,在 PHP 和 Python 中,与 C 不同,您不需要在首次使用变量之前声明变量,这可能就是您的意思。您可以只分配它们,它们将在第一次分配时创建。
// PHP
$a_new_var = 12345;
// All is well...
# Python
a_new_var = 12345
# All is well...
// C
a_new_var = 12345;
// Crash! Horror! Compiler complains!
int a_new_var;
a_new_var = 12345;
// ok...
于 2012-04-13T01:27:31.360 回答