Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 读取txt文件的第一行和最后一行;最快的方法和子流程故障排除_Python_Subprocess - Fatal编程技术网

Python 读取txt文件的第一行和最后一行;最快的方法和子流程故障排除

Python 读取txt文件的第一行和最后一行;最快的方法和子流程故障排除,python,subprocess,Python,Subprocess,我有一大堆大的文本文件要读第一行和最后一行。最好的方法是什么?我读到使用子流程会更快,但似乎无法让它正常工作(我对此相当愚蠢) 好的,错误是因为文件不在目录中。 从最基本的角度来说,我该如何着手解决这个问题?(记住,我是哑巴)。我尝试了以下代码,但仍然不起作用 import os def makemydir(whatever): try: os.makedirs(whatever) except OSError: pass os.chd

我有一大堆大的文本文件要读第一行和最后一行。最好的方法是什么?我读到使用子流程会更快,但似乎无法让它正常工作(我对此相当愚蠢)

好的,错误是因为文件不在目录中。 从最基本的角度来说,我该如何着手解决这个问题?(记住,我是哑巴)。我尝试了以下代码,但仍然不起作用

import os


def makemydir(whatever):
    try:
        os.makedirs(whatever)
    except OSError:
        pass
    os.chdir(whatever)


makemydir('A:/Desktop/TempData/')
这仍然是最快的方法吗?我应该考虑多线程吗?

是一个Linux命令,显示文件的最后一行。您发布的代码尝试在python之外调用该命令并读取其输出

因为它是本机linux二进制文件,并且您在Windows上,所以python找不到命令“tail”,这会导致您看到的错误消息。您需要安装mingw或gitbash之类的东西才能安装“tail”程序


如果您只想使用python,我建议您打开文件,使用file.seek从文件末尾读取,并向后搜索最后一行的起始位置。

最好不要在帖子中提出多个问题…首先检查磁盘上是否有文件
a:/Desktop/TempData/Yes.txt
。再次检查您是否有程序
tail
——它预装在Linux上,而不是Windows上。您还可以获得
tail
的完整路径。您还可以使用
python
打开文件、读取行并获取第一行和最后一行。
import os


def makemydir(whatever):
    try:
        os.makedirs(whatever)
    except OSError:
        pass
    os.chdir(whatever)


makemydir('A:/Desktop/TempData/')