python 一个函数怎么使用另一个函数内的变量

例如一个函数内有一个变量i,怎么在函数外或另一个函数中调用或更改它。新手学习,谢谢。

例如一个函数内有一个变量i,怎么在函数外或另一个函数中调用或更改它。新手学习,谢谢。

==============================

不能在函数外更改某函数里的局部变量,因为每当你实例化那个函数的时候,那个函数里面的局部变量也会被重新赋值,重新定义,谈何更改呢?

这一个全部变量和局部变量的问题,如果要实现楼主说的,必须使用全局变量(类中的self):

================bianliang.py===========
#coding: utf-8
i = 0 #定义一个全局变量i

def a():
'''
打印出i的值
'''
print i

def b():
global i

a() #调用a方法
print i #打印i
i = 1000 #重新赋值i
print i #打印i
a() #再次调用a方法

b()
=================================

%python bianliang.py
0
0
1000
1000

这个py文件里面使用了一个全局变量i,实现了a方法和b方法共用参数i
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-09-19

用闭包

再来看看专业的解释:闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。

def make_adder(addend):
    def adder(augend):
        return augend + addend
    return adder

p = make_adder(23)
q = make_adder(44)print p(100)print q(100)

运行结果:
123
144

python中同一个类的函数怎么调用另一个函数里的数据
如果是同一包里面,直接就可以使用,如果不是同一个包,那么需要先import后,通过“包名.类名”才能使用。下面是同一个包里面的案例:def a():print(1)def b():a()print (2)b()

python如何在一个函数中调用另一个函数返回的多个值中的一个?
你可以用3个变量去接收返回值,也可以直接获得tuple,然后用数组的索引去获得。比如这样:def returnMulti(): return 1, 2, 3 result = returnMulti()a, b, c = returnMulti()print result[0], result[1], result[2]print a, b, c结果是一样的。

python一个文件调用另一个文件中函数的变量
可以,把需要调用的那个文件作为模块导入就行。from xx(文件名,注意不要加后缀.py) import 这样就把xx文件里的变量导入进主程序了,然后直接用xx文件里的变量就行

python中怎么把一个函数定义为另一个函数的变量
可以,然后在adc2里面直接adc1()就可以调用adc1这个函数了

python的函数里面定义的变量在函数外面怎么用?
局部变量是不可以再函数外访问的。如果坚持访问,有两个办法:1)把a修改成全局变量;2)把function2定义在function1的内部。

Python怎么使用变量
1、首先学过C语言的朋友都知道,C语言如果要使用变量,需要先定义一个类型的变量,然后才可以使用。2、然后在Python语言中,不需要预先定义,可以直接在用到的地方赋值即可。3、Python编译器会自动根据变量被赋值的数据,来分配数据类型。4、C语言中定义全局变量,需要在函数外部。5、接着Python也可以定义...

Python 怎么从定义的函数之外调用其中的变量
一个比较简单的解决办法是你在函数外就先声明这个变量,声明成全局变量。然后在函数里面进行操作和赋值。最后就能在函数外获取变量的值了。例如:x = 0def a(): x = 2if __name__ == '__main__': a() print x最终x打印出来的结果就是2 ...

Python怎么使用变量 使用变量方法介绍
1.先学过C语言的朋友都知道,C要使用变量,语言需要先定义一种变量,然后才能使用。2.然后在Python在语言中,不需要事先定义,可以直接在使用的地方赋值。3.Python根据变量赋值的数据,编译器会自动分配数据类型。4.C全局变量在语言中的定义需要在函数之外。5.接着Python也可以定义全局变量,需要在函数...

python 定义了两个函数def A(),def B(),如果B想使用A中的变量,要怎么做...
感觉不行,局部变量要别的函数用只有一个办法,不过我没成功过,就是用global,变成全局,然后再global到局部给下个def用 最好还是把你要的变量,做成别的函数的结果,然后defA()和defB()都去调用是最好的,也方便改 比如这样

python多个py文件中调用方法中的变量
Python中的变量有全局和局部之分。在函数内部定义的变量是局部变量,只能在函数内部使用。如果你想在多个文件中共享某个变量,应该将其定义为全局变量。在Python中,通过在函数外部定义变量或者使用`global`关键字来声明全局变量。这样,在任何文件中导入包含该变量的模块后,都可以访问这个全局变量。

相似回答