0
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'枚舉'函數中斷循環? python3
但我不改變for循環,當我刪除評論,即時通訊仍然閱讀對象'x',我不打電話或涉及'o'但沒有輸出,它是如何影響我的代碼?對不起,我是一個noob :) – user2817436
因此,readlines將讀取文件中的行直到EOF。 'for i in x'也具有相同的行爲 - 整個文件中的迭代器在每次調用之前都會讀取一行,直到EOF。如果你做枚舉(x.readlines()),它的readlines()部分將讀取所有的數據併到達EOF。那麼你會'爲我在X',但X已經在EOF,所以實際上不會去任何地方。您需要重置該文件(關閉/重新打開,或者執行x.seek(0)將其返回到文件的開頭,然後它將起作用。 –