我的问题可能很简单,但我真的无法弄清楚哪里出了问题。
我想将一个变量从一个函数传递给另一个函数。因此,我使用return,但始终收到一条错误消息,即未定义我的变量。

我的代码是:

url = "http://www.419scam.org/emails/2004-01/30/001378.7.htm"

def FirstStrike(url):
    ...
    return tokens

def analyze(tokens):
    ...

if __name__ == "__main__":
    FirstStrike(url)
    analyze(tokens)


如果运行此命令,则会收到错误消息:NameError:未定义名称'tokens'。

最佳答案

运行代码时,您没有将FirstStrike的结果分配给变量:

if __name__ == "__main__":
    tokens = FirstStrike(url)
    analyze(tokens)


这是必需的,因为否则在调用tokens时未定义analyze

关于python - python中的变量范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10961484/

10-12 02:21