Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
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
你的意思是你没有得到输出,对吧?
那是因为 x.readlines() 不是生成器——它实际上是从 x 中读取所有数据。然后把它交给o,用枚举器包裹。
所以当你在 x 中为 i 做时:
没有更多数据要读取 - 无事可做。
你可以这样做:for i,text in o: print '%d: %s'%(i, text)
那会奏效...