Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在for循环中创建局部变量_Python_Python 3.x - Fatal编程技术网

Python 如何在for循环中创建局部变量

Python 如何在for循环中创建局部变量,python,python-3.x,Python,Python 3.x,我对编程非常陌生,我知道这是一个相当愚蠢的问题,但我不知道如何寻找答案 对于赋值,我们被限制为2个或更少的全局变量 我正在尝试这样做: for x in range(0,5): etc, etc 我试过打印global(),我很确定这会使x成为一个全局变量-在这种情况下,有没有办法创建一个局部变量,还是我只需要解决它?在循环的作用域之外的作用域中不可能有循环变量,这仅仅是因为变量定义在与for循环相同的行/缩进中。如果的循环在全局范围内,则循环变量也在全局范围内。但是,如果您的限制仅限

我对编程非常陌生,我知道这是一个相当愚蠢的问题,但我不知道如何寻找答案

对于赋值,我们被限制为2个或更少的全局变量

我正在尝试这样做:

for x in range(0,5):
    etc, etc

我试过打印global(),我很确定这会使x成为一个全局变量-在这种情况下,有没有办法创建一个局部变量,还是我只需要解决它?

在循环的作用域之外的作用域中不可能有循环变量,这仅仅是因为变量定义在与
for
循环相同的行/缩进中。如果的
循环在全局范围内,则循环变量也在全局范围内。但是,如果您的限制仅限于全局变量,则可以将
循环置于非全局范围内,例如函数,如下所示:

def loop():
    for x in range(0, 5):
        ...
然而,这种变通方法可能与任务的精神背道而驰,因此请谨慎使用


值得注意的是,这种方法仍然会创建一个全局变量,在本例中是一个函数,但该变量是否计数可能取决于赋值的语义。“小心使用”更可能是“根本不使用”。

x是局部作用于循环的,不是全局的。您试图实现的目标不清楚。给出一个较长的代码示例。局部变量不局限于for循环,而是局限于函数或方法。虽然不一定是
global
@OneCricketeer,但您会发现
x
仍在循环后的作用域中--它不局限于循环。在函数内更改时,全局变量由
global
语句定义。挑战自己不要使用任何东西。从广义上讲,…“local”意味着函数的局部性。如果不使用任何函数,则变量将是全局变量。但是,这创建了一个名为
loop
的全局变量。