2 回答
TA贡献1911条经验 获得超7个赞
您可能需要了解Python 中的本地和全局作用域。简而言之,您创建了一个api在函数外部不可见的局部变量。
在解决所提供的错误时,根据所需的结果有不同的方法:
使用保留字global使变量在全局范围内可见:
def auth():
global api # This does the trick publishing variable in global scope
api = twitter.Api(consumer_key='<>',
consumer_secret='<>',
access_token_key='<>',
access_token_secret='<>')
auth()
api.PostUpdate('Hello World') # api variable actually published at global scope
但是我不建议在没有适当简洁的情况下使用全局变量
提供的代码很小,因此无需包装到额外的函数中
api = twitter.Api(consumer_key='<>',
consumer_secret='<>',
access_token_key='<>',
access_token_secret='<>')
api.PostUpdate('Hello World')
从函数返回对象 - 我推荐这种方法,因为它是最合适和可靠的
def auth():
api = twitter.Api(consumer_key='<>',
consumer_secret='<>',
access_token_key='<>',
access_token_secret='<>')
return api
api = auth()
api.PostUpdate('Hello World')
最后但很重要的一句话:避免在公共帖子中发布秘密 - 这些不是解决方案所必需的,但可能会暴露给破坏者。
添加回答
举报