首页 > 解决方案 > 变量不在嵌套函数之间传递

问题描述

我正在尝试制作一个需要 cookie 和标题的网络爬虫。我定义了一个返回它们的函数,并创建了一个 main 函数来运行所有内容。但它没有得到cookies。当我用它运行它时, if __ name__ == __main:它可以工作,但如果我把它放在一个函数中,它就不会。

这不起作用:

def main(user, password):
    cookies, headers = login(user, password)
    for thread in argv[1::]:
        for photo in get_photos(thread):
            download(photo)

这确实有效:

if __name__ == "__main__":
    cookies, headers = login(user, password)
    for thread in argv[1::]:
        for photo in get_photos(thread):
            download(photo)

标签: python

解决方案


推荐阅读