Python 使用read()函数仅提取最后一行

Python 使用read()函数仅提取最后一行,python,line,readlines,Python,Line,Readlines,我正在使用以下代码进行一些文本分析(我有更多代码用于分析): 我的问题是:如何只打印文件的最后一行 我尝试了这种方法,但我认为这不是一个好的选择,因为它不会返回任何消息: with open(os.path.join(root, file)) as auto: a = auto.read(50000) lines = a.readlines() last_line = lines[-1] for li

我正在使用以下代码进行一些文本分析(我有更多代码用于分析):

我的问题是:如何只打印文件的最后一行

我尝试了这种方法,但我认为这不是一个好的选择,因为它不会返回任何消息:

with open(os.path.join(root, file)) as auto:
            a = auto.read(50000)
            lines = a.readlines()
            last_line = lines[-1]
            for line in auto:
                print(last_line)
如何使用auto.read()打印文件的最后一行

谢谢你写的

我尝试了这种方法,但我认为这不是一个好的选择,因为它不会返回任何消息:

with open(os.path.join(root, file)) as auto:
            a = auto.read(50000)
            lines = a.readlines()
            last_line = lines[-1]
            for line in auto:
                print(last_line)
然后要求使用
read()
技术。然而,我认为您的方法是合理的,并且确实有效(尽管我怀疑您正在阅读的文件中有一个空白行作为文件的最后一行)。例如,这确实会打印文件的最后一行:

import os
with open('test.py') as auto:
    lines = auto.readlines()
    last_line = lines[-1]
    print(last_line)
也许:

list.txt

sdfs
sdfs
fg34
345
gn
4564
with open('list.txt') as fileObj:
    print(list(fileObj)[-1])
4564
因此

sdfs
sdfs
fg34
345
gn
4564
with open('list.txt') as fileObj:
    print(list(fileObj)[-1])
4564
使用:

输出

sdfs
sdfs
fg34
345
gn
4564
with open('list.txt') as fileObj:
    print(list(fileObj)[-1])
4564
您可以计算文件行数(wc-l文件)并在最后一行查找可能的重复行数