0

给定两个文件 A.py 和 B.py,A 导入 B.py 并调用其中定义的函数 'foo'。如果 'foo' 需要一个全局变量来跟踪自身,它应该如何以及在哪里定义?谢谢

4

1 回答 1

1

B.py中,因为这是 的全局范围foo()

var = 0

def foo():
    global var
    #use var here

但如果foo()需要一个变量来跟踪某事,它可能应该是类中的方法(具有状态的函数并不是真正的函数)。

另一种解决方案是添加一个foo.var变量:

def foo():
    'use foo.var here'
    # things

foo.var = 0

根据您的意图,您正在寻找的可能不是函数而是生成器函数

于 2013-07-03T01:27:14.383 回答