[Python3]如何解决此警告?(在分配之前引用的局部变量)

问题描述 投票:-5回答:3

The Picture of my Code

我使用了xlrd模块。它运作得很好。但是,我想解决这个警告。怎么做?

python python-3.x pycharm warnings local-variables
3个回答
0
投票

你需要将print_all_cell放在try区块的末尾。


0
投票

如果try块抛出异常,sheet将无法定义。只需在try块中移动它的用法(因为它无意义而无需初始化sheet):

try:
    wb = xlrd.open_worbook("/path/to/file")
    sheet = wb.sheet_by_name("mysheet")
    print_all_cell(sheet) # Here!
except IOError:
    # Handle error...

0
投票

您正在尝试打开工作簿,之后您正在减速变量表。如果出现问题,Pycharm在异常块中没有得到你将退出你的应用程序。所以它假设 - 好吧,用户正在尝试减速try块内的一个新变量,如果在该声明之前发生异常,它将不会被初始化。请查看以下示例:

try:
    a = int('abc')
    b = a + 5
except ValueError:
    pass

print(b)

当你运行它时,你会得到NameError: name 'b' is not defined

© www.soinside.com 2019 - 2024. All rights reserved.