'枚举'函数打破循环? python3

时间:2013-10-02 19:06:51

标签: loops enumerate

def main():
    x = open("textfile.txt", "r")
    #o = enumerate(x.readlines())

    for i in x:
        print(i, end="")



    x.close
if __name__ == "__main__": main()

如果我取消注释“o”对象,则此脚本将无法运行。 有人可以告诉我为什么会这样吗? :python3.3

1 个答案:

答案 0 :(得分:0)

你的意思是你没有得到输出,对吗?

因为x.readlines()不是生成器 - 它实际上是从x中读取所有数据。然后将其赋予o,用枚举器包装。

所以当你这样做的时候     对于我在x:

没有更多的数据需要阅读 - 无所事事。

你可以这样做:     对于我,o中的文字:          打印'%d:%s'%(i,文字)

那会起作用......