从 .htb 文件中删除前 3 列

remove first 3 columns from a .htb file

我有一个 .htb 文件,我想用 python 编辑它,这样我以后可以将值导入 MySQL table。 MySQL table 将描述作为列名。

.htb 文件由 4 列组成,我想删除前 3 列(描述、简短描述、单位),这样我就只剩下值了。 这是 .htb 文件的样子:

Description\tShortdescription\tUnit\tValue\n
\n
Hub\tHub\tmm\t68.000000000000\t\t\t\n           
Bohrung\tBohru\tmm\t89.000000000000\t\t\t\n
-----\n
Rechenbeginn\tKW_Start\t°KW\t-117.648988767436\t\t\t\n

为了能够将值导入 MySQL 我还必须删除:

  1. "-----"
  2. 列名和空行“Description\tShortdescription\tUnit\tValue\n \n
  3. \t\t\t

我已经通过这样做做到了:

 with open("C:/Users/l-reh/Desktop/HTB_neu/Werte.htb", "r") as infile, \
 open("C:/Users/l-reh/Desktop/HTB_neu/Werte Aufbereitet.htb", "w", encoding="utf8") as outfile:
 data = infile.read():
 data = data.replace("Description   Shortdescription    Unit    Value\n", "")
 data = data.replace("\n", "")
 data = data.replace("-----", "")
 data = data.replace("\t\t\t", "\n")
 outfile.write(data)

我现在的问题是如何删除前 3 列?我的最终文件最好的样子是这样的:

68.000000000000\n
89.000000000000\n
-117.648988767436\n

您可以逐行处理文件,并将处理后的数据追加到单个字符串中,然后将其写回文件。

with open("C:/Users/l-reh/Desktop/HTB_neu/Werte.htb", "r") as infile, 
open("C:/Users/l-reh/Desktop/HTB_neu/Werte Aufbereitet.htb", "w", encoding="utf8") as outfile:
    data = infile.read():
    data = data.replace("Description  Shortdescription    Unit    Value\n", "")
    data = data.replace("\n", "")
    data = data.replace("-----", "")
    data = data.replace("\t\t\t", "\n")
    final_data = ""
    for line in data.split("\n")[:-1]:
         final_data += line.split("\t")[3] // choosing 4th value
         final_data += "\n"
    outfile.write(final_data)