Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/twitter-bootstrap/4.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和在if语句中分配变量值_Python - Fatal编程技术网

python和在if语句中分配变量值

python和在if语句中分配变量值,python,Python,我是python的初学者,我发誓我有一个非常类似于我现在工作的程序。但是,由于某种原因,我不能让它工作。我能够找出我的问题,并创建了一个假的程序来处理它。以下是该计划的内容: global heading global heading2 global a heading=2 a=2 heading2=4 def function (): if a==2: heading=heading2 print 'yes' print headin

我是python的初学者,我发誓我有一个非常类似于我现在工作的程序。但是,由于某种原因,我不能让它工作。我能够找出我的问题,并创建了一个假的程序来处理它。以下是该计划的内容:

global heading
global heading2
global a

heading=2
a=2
heading2=4

def function ():
    if a==2:
        heading=heading2
        print 'yes'
        print heading

function()       
print heading
这就是出现的情况:

yes
4
2
为什么heading变量heading不保持值4?我试着把回程的航向弄得到处都是。没用。我试着把变量放在函数的括号里。也不管用。。。你知道我做错了什么吗

    heading=heading2
创建一个名为
heading
的新局部变量,该变量与传递到函数中的另一个名为
heading
的变量不同

通过添加以下内容,可以将函数指定给外部变量:

global heading
在指定标题之前:

def function():
    global heading
    if a==2:
        heading=heading2
        print 'yes'
        print heading

在函数内部,您正在创建一个名为
heading
的局部变量。这与函数外部声明的
标题不同。

global
语句在函数外部没有意义。如果要修改全局变量,而不是引入局部变量,则需要将
global
放入函数中

def foo():
    global x
    x = x2
另外,不要使用全局变量