是否可以在Python中的函数中定义全局变量



如何在Python中的函数中声明全局变量?

也就是说,这样它就不必在之前声明,而是可以在函数之外使用。

是的,但为什么?

def a():
globals()['something'] = 'bob'
def function(arguments):
global var_name
var_name = value #must declare global prior to assigning value

这将适用于任何函数,无论它是否在同一程序中。

这里有另一种使用方法:

def function():
num = #code assigning some value to num
return num

注意:使用内置的return将自动停止程序(或功能),无论程序是否完成。

你可以在这样的函数中使用它:

if function()==5 #if num==5:
#other code

这将允许您在函数之外使用该变量。不一定要声明为全球性的。

此外,要使用从一个函数到另一个函数的变量,可以执行以下操作:

import primes as p #my own example of a module I made
p.prevPrimes(10) #generates primes up to n
for i in p.primes_dict:
if p.primes_dict[i]: #dictionary contains only boolean values
print p.primes_dict[i]

这将允许您在另一个函数或程序中使用该变量,而无需使用全局变量或内置的return

相关内容

  • 没有找到相关文章

最新更新