【Python】将不规则txt文本数据读取并转换为csv文本
1.需求描述
现在有如下数据文件:
id name age
1 小明 13
2 小张 15
3 小王 13
4 张三 14
5 王五 18
需要将上述数据转化为csv文本数据,众所周知,csv是逗号分隔,所以只需要将文本中的制表符替换为逗号,并且将每个字符串的空值去除即可。
2.实现代码
# Author:Logan
# Date:2020/6/5 17:00
# IDE:PyCharm
def read_txt(input_file):
res = []
file_object = open(input_file, 'r', encoding = "UTF-8")
s = [ line.split("\t") for line in file_object.readlines()]
for item in s:
m = [i.strip() for i in item]
res.append(m)
file_object.close()
return res
def write_txt(res, output_file):
f = open(output_file, 'w', encoding = "ANSI")
for lst in res:
tmp_str = ",".join(str(i) for i in lst)
f.write(tmp_str + "\n")
def main():
input_file = 'd:/data.txt'
output_file = 'd:/data.csv'
res = read_txt(input_file)
write_txt(res,output_file)
print('数据转换成功!!请到指定目录下查看数据!')
if __name__ == '__main__':
main()
3.运行结果
点击下载附件
作者:奔跑的金鱼
声明:书写博客不易,转载请注明出处,请支持原创,侵权将追究法律责任
个性签名:人的一切的痛苦,本质上都是对自己无能的愤怒
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!