【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.運行結果

點擊下載附件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM