gpt4 book ai didi

python - 未绑定(bind)的本地错误python

转载 作者:行者123 更新时间:2023-12-03 08:22:55 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Don't understand why UnboundLocalError occurs (closure) [duplicate]

(8 个回答)


8年前关闭。




我需要帮助找出为什么会出现以下错误:

Traceback (most recent call last):
File "prawtest3.py", line 25, in <module>
commentMatcher()
File "prawtest3.py", line 13, in commentMatcher
commentCollection.append(comment)
UnboundLocalError: local variable 'commentCollection' referenced before assignment

这是我的代码。对于背景信息,我正在尝试创建一个 reddit 机器人来比较一个人的评论,然后在他们监控的人提交新评论时向用户发送消息。如果您也发现该功能存在问题,请随时分享您的意见。我只需要先诊断我的代码以消除语法错误,然后再担心语义错误。
import praw
import time

r = praw.Reddit('PRAW related-question monitor by u/testpurposes v 1.0.')
r.login()
user = r.get_redditor('krumpqueen')
commentCollection = []
commentComparison = []

def commentMatcher():
comments = user.get_comments(limit = 4)
for comment in comments:
commentCollection.append(comment)
time.sleep(60)
comments = user.get_comments(limit = 4)
for comment in comments:
commentComparision.append(comment)
if commentCollection[1] != commentComparision[1]:
r.send_message('krumpqueen', 'just made a new comment', 'go check now')
commentCollection = list(commentComparision)
else:
r.send_message('krumpqueen', 'did not made a new comment', 'sorry')

while(True):
commentMatcher()

最佳答案

您对 commentCollection 的使用使python(错误地1)假设commentCollection是本地的(因为您稍后对其进行了分配,并且没有 global 语句)。当您尝试附加到本地(尚未创建)时,python 会抛出 UnboundLocalError。

1当然,不是python做出了错误的假设,这就是语言的设计方式。

关于python - 未绑定(bind)的本地错误python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21542216/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com