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.運行結果
點擊下載附件