首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从.htb文件中删除前3列

从.htb文件中删除前3列
EN

Stack Overflow用户
提问于 2021-05-01 13:22:45
回答 1查看 34关注 0票数 0

我有一个.htb文件,我想用python编辑它,以便以后可以将值导入到MySQL表中。MySQL表的描述为列名。

.htb文件由4列组成,我希望删除前3列(Description、Shortdescription、Unit),这样我就只有剩下的值了。.htb文件的外观如下:

代码语言:javascript
复制
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. The列名和空行"Description\tShortdescription\tUnit\tValue\n \n“
  3. \t\t

我已经这样做了:

代码语言:javascript
复制
 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列?我的最终文件看起来最好的方式是:

代码语言:javascript
复制
68.000000000000\n
89.000000000000\n
-117.648988767436\n
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-01 13:37:59

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

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67346779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档