Skip to main content
 首页 » 编程设计

python之删除文本文件中的行

2025年05月04日13jpfss

我拥有的以下文本文件示例是:

> 1 -4.6    -4.6    -7.6 
>  
> 2 -1.7    -3.8    -3.1 
>  
> 3 -1.6    -1.6    -3.1 

数据在文本文件中以制表符分隔,第一列表示位置。

我需要遍历文本文件中除第 0 列之外的每个值并找到最小值。

一旦找到最低值,就需要将该值连同列名和位置写入新的文本文件。第 0 列的名称为“position”,第 1 列为“fifteen”,第 2 列为“sixteen”,第 3 列为“seventeen”

例如,上述数据中的最低值为“-7.6”,位于名称为“17”的第 3 列中。因此,需要将“7.6”、“17”及其位置值(在本例中为 1)写入新的文本文件。

然后我需要从上述文本文件中删除一些行。

例如上面的最低值是“-7.6”,位于位置“1”,在名称“17”的第 3 列中找到。因此,我需要从文本文件中删除从位置 1 开始(包括位置 1)的十七行

所以找到最小值的列表示需要删除的行数,找到它的位置表示删除的起点

请您参考如下方法:

打开这个文件读,另一个文件写,复制所有不符合过滤器的行:

readfile = open('somefile', 'r') 
writefile = open('otherfile', 'w') 
 
for line in readfile: 
  if not somepredicate(line): 
    writefile.write(line) 
 
readfile.close() 
writefile.close()