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。并将导入
放在文件的开头,这样您就可以立即看到与其他模块的依赖关系。但每次函数运行时,都会生成一个随机数,因此每次我将该数字指定给变量时,该数字都会被删除,但每次函数运行时,产生一个随机数,因此每次我将该数字指定给变量时,该数字都将被删除。但每次函数运行时,产生一个随机数,因此每次我指定