在for循环外更改变量

时间:2020-01-10 19:17:38

标签: python pycharm

我正在编写一个程序,在其中使用for循环访问列表中的对象。我希望能够从循环内在for循环外更改变量。下面的代码段:

member_found = False    # default value

for member in self._members:
    if member_id == member.get_account_ID():
        member_found = True

在PyCharm中,我收到一条通知,指出“未使用本地变量'member_found'值。”当我运行这段代码时,似乎没有产生任何错误,但是我想确保在for循环之外的变量确实被更改了。

我总是可以将默认值设置为空列表并追加列表,但是如果可能的话,我宁愿使用布尔值。

3 个答案:

答案 0 :(得分:1)

正如Phix所提到的,该通知只是关于您在for循环后不使用变量的警告。 Python的作用域规则使之成为可能,以便您共享的代码完全符合您要执行的操作。

答案 1 :(得分:0)

PyCharm只是在警告您,正如您自己说的那样,您并没有收到错误,而是实际上在按照自己的方式更改值。尝试在for循环后打印该值,以确保其实际更改。

答案 2 :(得分:0)

变量已更新。我们可以简单地说明一下:

x = 0
 for i in range(5):
   x = i

print(x)
4

其他人已经解释了您收到的警告,因此我在此没有任何补充。