而循环比较表现奇怪

时间:2014-06-17 16:36:24

标签: python while-loop

我正在解析我正在阅读的文件中的数据列表,每一行都以' \ n'字符。 当我试图在行尾停止时,我的同时不会停在换行符处。

while parsed_data[i] is not '\n':
    if parsed_data[i] is not '':
        temp_data.append(parsed_data[i])
    i += 1

我在此处循环播放的数据截图的链接:http://i.imgur.com/2ycDDDL.png

当循环到达第11个元素时,循环不会退出,导致它运行另一个循环,从而超过列表的边界。

1 个答案:

答案 0 :(得分:1)

对于两个相同的字符串,

is并不总是返回True。例如:

>>> a = "\n"
>>> b = "\n"
>>> a is b
False
>>> a == b
True

使用is not替换代码中的!=

相关问题