如何逐行阅读文本文件" Pythonic"办法

时间:2018-05-01 23:13:40

标签: python-3.x file-io

我意识到这是一个普遍而简单的问题。我能够使用 dawg 的以下帖子中的伪C方法完成我的项目。我使用了'而真实'并测试了一个空行。
read a text file line by line

IDE警告未使用本地变量 line 。将变量 s 更改为对输出没有影响。 但 dawg 建议的Pytonic方式似乎是跳过线。我已经取出了我在方法中执行的所有处理(文本到int,将数据放入元组列表,并对其进行排序),我重写了这篇文章的文本文件。类似的结果。

我也尝试过 sys.stdin 建议,但没有保存这些结果。

显然,我是Python3.5的初学者。

# iofile_test3.py

with open('test_read_file.txt', 'r') as f:
for line in f:
    # read a line from file
    s = f.readline()
    print(s)


#test_read_file,txt
First line
Second line
Third line
Fourth and last line
######output#####
.Python 3.5.2 (default, Sep 14 2017, 22:51:06) 

`>>>

Second line

Fourth and last line


>>> 

我正在使用Pycharm 17.3社区版本,但也尝试使用具有相同输出的Idle的此代码。第1和第3行似乎被跳过了。我的操作系统是Linux Mint。

1 个答案:

答案 0 :(得分:1)

这些行被跳过,因为你在没有打印它们的情况下扔掉它们。通常的做法是不要忽视它们:

with open('test_read_file.txt', 'r') as f:
    for line in f:
        print(line)