Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.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_Python 2.7 - Fatal编程技术网

Python 不带使用预创建元素的参数的函数

Python 不带使用预创建元素的参数的函数,python,function,python-2.7,Python,Function,Python 2.7,我正在制作一个程序,它使用一个名为“lev”的变量,这个变量必须在我的所有函数中使用,但它不需要是函数的参数。我的意思是,函数做了一些事情,然后改变了“lev”值,所以我需要这样的东西: >>> lev=8 >>> def t(): >>> print 1+1 >>> lev = lev+1 >>> t() >>> lev 9 这是我的第一个想法,但实际上,这样做是行

我正在制作一个程序,它使用一个名为“lev”的变量,这个变量必须在我的所有函数中使用,但它不需要是函数的参数。我的意思是,函数做了一些事情,然后改变了“lev”值,所以我需要这样的东西:

>>> lev=8
>>> def t():
>>>      print 1+1
>>>      lev = lev+1
>>> t()
>>> lev
9
这是我的第一个想法,但实际上,这样做是行不通的


我不能使用“return”来获取新的“lev”变量,因为有些函数我需要从它们返回True或False,并编辑“lev”的值,所以我不能使用“return”命令。有人有主意吗?谢谢

在函数中定义它
global lev

>>> lev=8
>>> def t():
>>>      global lev
>>>      print 1+1
>>>      lev = lev+1
>>> t()
>>> lev
9

这就是函数的全部内容,它们有自己的作用域。加上你所说的代码实际上是不可能的
lev
是函数的局部变量,因此它将失败,并出现
UnBoundLocalError
。总有比使用全局变量更好的解决方案。Python函数可以返回多个值。