我的 IDE在分配之前警告我不要引用可能的变量。但我很难发现它。我已准备好提交错误报告,但也许您可以看到我没有看到的内容。
有问题的变量是一个命名的,赋值警告之前check_dialog
的引用发生在我为您标记的行中的以下代码片段的末尾:
if dialog:
validate = None
string = False
if dialog == Prompt.YES | Prompt.NO:
check_dialog = lambda c: chr(c) in 'yn'
elif dialog == Prompt.CONTINUE | Prompt.QUIT:
check_dialog = lambda c: chr(c) in 'cq'
elif dialog == Prompt.YES | Prompt.NO | Prompt.QUIT:
check_dialog = lambda c: chr(c) in 'ynq'
else:
raise ValueError('Invalid dialog argument.')
answer = None
while not answer:
self.addstr(0, 1, prompt)
if string:
curses.curs_set(True)
curses.echo()
answer = self.getstr(1, 3)
curses.noecho()
curses.curs_set(False)
elif dialog:
while not check_dialog(answer): # warning here!
answer = self.getch()
else:
answer = self.getch()