从python中的文件逐行读取

时间:2017-08-17 15:28:15

标签: python

为了从这个文件中提取一些值:

enter image description here

我需要逐行阅读。 我先尝试逐行阅读,但我不知道为什么它不起作用。

我试过了:

from tkinter import *

movieList = ["1 Frozen 06/15 11:35 95", "3 Frozen 06/18 11:35 95",
        "4 Frozen 06/30 11:25 95", "5 Frozen 07/02 11:45 95",
        "6 Frozen 07/05 12:30 95"]

master = Tk()

option = StringVar(master)
option.set(movieList[0]) # Set the first value to be the default option

w = apply(OptionMenu, (master, option) + tuple(movieList))
w.pack()

mainloop()

修改

问题:工作但没有显示此行(这是文件) enter image description here

它们的最后一行是:(这是生成的) enter image description here

4 个答案:

答案 0 :(得分:1)

您需要遍历文件而不是行:

#! /usr/bin/python
file = open('/home/results/err.txt')
for line in file:
    print line

file.readline()只读取第一行。当你迭代它时,你正在遍历行中的字符。

答案 1 :(得分:1)

file.readline()已经读了一行。迭代该行可以为您提供单独的字符。

相反,请使用:

for line in file:
    …

答案 2 :(得分:1)

试试这个:

#! /usr/bin/python
file = open('/home/results/err.txt')
for line in file.readlines():
    print line

答案 3 :(得分:1)

您可能希望使用上下文管理器在读取行后自动关闭打开的文件,即确保在python处理文件时没有任何意外的事件发生。

with open('/home/results/err.txt', 'r') as file:
for line in file:
    print line

readline()会逐行读取您的文件,但迭代会单独打印这些字母。