Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.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 如何使用在函数内部、函数外部定义的变量?_Python_Function_Variables - Fatal编程技术网

Python 如何使用在函数内部、函数外部定义的变量?

Python 如何使用在函数内部、函数外部定义的变量?,python,function,variables,Python,Function,Variables,以下是我的功能: def playNovice(marbles): import random rand = random.randint(1,(0.5*marbles)) print('Computer takes: ', rand) a = rand + rand print(a) 我想重用变量rand。我感觉可能是: global rand 我确实试过了,但没用,所以我想我用错了,或者是它都错了。是的,你用的是全局兰德 您还需要添加pl

以下是我的功能:

def playNovice(marbles):
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

a = rand + rand
print(a)
我想重用变量rand。我感觉可能是:

global rand

我确实试过了,但没用,所以我想我用错了,或者是它都错了。

是的,你用的是
全局兰德

您还需要添加
playnearl(弹珠数量)
才能运行该函数。定义函数就像设置变量,但不打印它

def playNovice(marbles):
    global rand
    import random
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)

playNovice(num)
a = rand + rand
print(a)
上述措施应该有效


正如旁注一样,最好将所有全局声明放在函数的开头,以便在调试时更易于阅读。

是的,您确实使用了
全局rand

您还需要添加
playnearl(弹珠数量)
才能运行该函数。定义函数就像设置变量,但不打印它

def playNovice(marbles):
    global rand
    import random
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)

playNovice(num)
a = rand + rand
print(a)
上述措施应该有效


正如旁注一样,最好将所有全局声明放在函数的开头,以便在调试时更易于阅读。

是的,您确实使用了
全局rand

您还需要添加
playnearl(弹珠数量)
才能运行该函数。定义函数就像设置变量,但不打印它

def playNovice(marbles):
    global rand
    import random
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)

playNovice(num)
a = rand + rand
print(a)
上述措施应该有效


正如旁注一样,最好将所有全局声明放在函数的开头,以便在调试时更易于阅读。

是的,您确实使用了
全局rand

您还需要添加
playnearl(弹珠数量)
才能运行该函数。定义函数就像设置变量,但不打印它

def playNovice(marbles):
    global rand
    import random
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)

playNovice(num)
a = rand + rand
print(a)
上述措施应该有效


正如旁注,最好将所有全局声明放在函数的开头,以便在调试时更易于阅读。

可以使用
全局rand
,但这不是理想的方法。(我同意返回值是解决此问题的更好方法)。这是在这种情况下如何使用
global rand
的示例

当你这样做的时候

a = rand + rand
您正在引用尚未声明的
rand

显示使用
global rand
修改
rand
的示例如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1
结果如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1

可以使用
全局rand
,但这不是理想的方法。(我同意返回值是解决此问题的更好方法)。这是在这种情况下如何使用
global rand
的示例

当你这样做的时候

a = rand + rand
您正在引用尚未声明的
rand

显示使用
global rand
修改
rand
的示例如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1
结果如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1

可以使用
全局rand
,但这不是理想的方法。(我同意返回值是解决此问题的更好方法)。这是在这种情况下如何使用
global rand
的示例

当你这样做的时候

a = rand + rand
您正在引用尚未声明的
rand

显示使用
global rand
修改
rand
的示例如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1
结果如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1

可以使用
全局rand
,但这不是理想的方法。(我同意返回值是解决此问题的更好方法)。这是在这种情况下如何使用
global rand
的示例

当你这样做的时候

a = rand + rand
您正在引用尚未声明的
rand

显示使用
global rand
修改
rand
的示例如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1
结果如下:

def playNovice(marbles):
        global rand
        import random
        rand = random.randint(1,(0.5*marbles))
        print('Computer takes: ', rand)

rand = 10
print(rand)
playNovice(2)
print(rand)
10
('Computer takes: ', 1)
1

使用
return
将值返回给调用者:

import random

def playNovice(marbles):
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)
    return rand

rand = playNovice(6)
a = rand + rand
print(a)

使用
return
将值返回给调用者:

import random

def playNovice(marbles):
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)
    return rand

rand = playNovice(6)
a = rand + rand
print(a)

使用
return
将值返回给调用者:

import random

def playNovice(marbles):
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)
    return rand

rand = playNovice(6)
a = rand + rand
print(a)

使用
return
将值返回给调用者:

import random

def playNovice(marbles):
    rand = random.randint(1,(0.5*marbles))
    print('Computer takes: ', rand)
    return rand

rand = playNovice(6)
a = rand + rand
print(a)

在函数末尾添加
return rand
,然后添加
rand=playnewoiner(…)
以将其删除
global rand
做了一件不同的事情(只需在上面搜索),在大多数情况下应该避免使用。如果不知道什么时候使用global有用,请不要使用global。并将
import
放在文件的开头,这样您就可以立即看到与其他模块的依赖关系。在函数末尾添加
return rand
,然后
rand=playnool(…)
,以将其删除
global rand
做了一件不同的事情(只需在上面搜索),在大多数情况下应该避免使用。如果不知道什么时候使用global有用,请不要使用global。并将
import
放在文件的开头,这样您就可以立即看到与其他模块的依赖关系。在函数末尾添加
return rand
,然后
rand=playnool(…)
,以将其删除
global rand
做了一件不同的事情(只需在上面搜索),在大多数情况下应该避免使用。如果不知道什么时候使用global有用,请不要使用global。并将
import
放在文件的开头,这样您就可以立即看到与其他模块的依赖关系。在函数末尾添加
return rand
,然后
rand=playnool(…)
,以将其删除
global rand
做了一件不同的事情(只需在上面搜索),在大多数情况下应该避免使用。如果不知道什么时候使用global有用,请不要使用global。并将
导入
放在文件的开头,这样您就可以立即看到与其他模块的依赖关系。但每次函数运行时,都会生成一个随机数,因此每次我将该数字指定给变量时,该数字都会被删除,但每次函数运行时,产生一个随机数,因此每次我将该数字指定给变量时,该数字都将被删除。但每次函数运行时,产生一个随机数,因此每次我指定