当前位置: 首页 > 面试题库 >

Python-仅读取特定行

盖辉
2023-03-14
问题内容

我正在使用for循环读取文件,但是我只想读取特定的行,例如26号和30号行。是否有任何内置功能可实现此目的?


问题答案:

如果要读取的文件很大,并且你不想一次读取内存中的整个文件:

fp = open("file")
for i, line in enumerate(fp):
    if i == 25:
        # 26th line
    elif i == 29:
        # 30th line
    elif i > 29:
        break
fp.close()

注意,i == n-1对于nth行。

在Python 2.6或更高版本中:

with open("file") as fp:
    for i, line in enumerate(fp):
        if i == 25:
            # 26th line
        elif i == 29:
            # 30th line
        elif i > 29:
            break


 类似资料:
  • 问题内容: 我有一个包含100行的CSV文件。 如何读取特定行? 我想读第9行或第23行等? 问题答案: 您可以使用来过滤文件,如下所示:

  • 我如何修改下面的代码来只获取表中的最后一行,特别是列下的值?原因是,这是一个巨大的表,我需要最后一行,特别是键值,才能知道它加载了多少。我不在乎还有什么其他内容。 第1行: 第2行: 第3行:

  • 我在使用OPENCSV并尝试从一行中读取特定列时遇到了小问题。我有一个看起来像这样的csv文件 现在我只想读取第2列和第3列(名称和名称2)。 我的代码看起来像这样 我已经尝试手动将“i”变量设置为1和2。但是我得到了日志中显示的4个相同的结果。缺少什么?谢谢!

  • 我有一个csv文件,如下所示: ... 我怎样才能在python中只读取列“AAA、DDD、FFF、GGG”并跳过标题?我想要的输出是一个元组列表,如下所示:[(1,4,3,20),(2,5,2,23),(4,6,1,22)]。我正在考虑稍后将这些数据写入SQLdatabase。 我参考了这篇文章:用csv模块从csv文件中读取特定的列?。但是我不认为这对我有什么帮助。因为我的. csv很大,有一

  • 问题内容: 我有一个csv文件,看起来像这样: … 如何只读取python中的“ AAA,DDD,FFF,GGG”列并跳过标题?我想要的输出是一个看起来像这样的元组列表:[(1,4,3,20),(2,5,2,23),(4,6,1,22)]。我正在考虑稍后将这些数据写入SQLdatabase。 我提到了这篇文章:使用csv模块从csv文件中读取特定的列?。但是我认为这对我的情况没有帮助。由于我的.c

  • 问题内容: 我正在使用python日志记录模块在python代码中记录事件。我也希望记录2个日志文件,一个包含用户信息,另一个包含针对开发人员的更详细的日志文件。我已将两个日志文件设置为所需的级别(usr.log = INFO和dev.log = ERROR),但无法解决如何将日志记录限制为usr.log文件,因此仅写入INFO级别日志到日志文件,而不是INFO以及上面的所有其他内容,例如INFO