濮阳杆衣贸易有限公司

主頁 > 知識庫 > Python批量將csv文件轉(zhuǎn)化成xml文件的實例

Python批量將csv文件轉(zhuǎn)化成xml文件的實例

熱門標簽:白銀外呼系統(tǒng) 騰訊外呼線路 激戰(zhàn)2地圖標注 公司電話機器人 陜西金融外呼系統(tǒng) 海南400電話如何申請 唐山智能外呼系統(tǒng)一般多少錢 哈爾濱ai外呼系統(tǒng)定制 廣告地圖標注app

一、前言

逗號分隔值(Comma-Separated Values,CSV,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數(shù)據(jù)(數(shù)字和文本)。純文本意味著該文件是一個字符序列,不含必須像二進制數(shù)字那樣被解讀的數(shù)據(jù)。CSV文件由任意數(shù)目的記錄組成,記錄間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其它字符或字符串,最常見的是逗號或制表符。通常,所有記錄都有完全相同的字段序列,通常都是純文本文件。

可擴展標記語言,標準通用標記語言的子集,簡稱XML。是一種用于標記電子文件使其具有結(jié)構(gòu)性的標記語言。在電子計算機中,標記指計算機所能理解的信息符號,通過此種標記,計算機之間可以處理包含各種的信息比如文章等。它可以用來標記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對自己的標記語言進行定義的源語言。 它非常適合萬維網(wǎng)傳輸,提供統(tǒng)一的方法來描述和交換獨立于應用程序或供應商的結(jié)構(gòu)化數(shù)據(jù)。

二、Python代碼實現(xiàn)

導入用到的庫

from xml.etree.ElementTree import Element, ElementTree
import csv
from pathlib import Path
import os

創(chuàng)建一個文件夾,用來保存轉(zhuǎn)換后的xml文件

# 創(chuàng)建一個文件夾  用來保存轉(zhuǎn)換后的xml文件
path = os.path.join('xml_file')
if not os.path.exists(path):
    os.mkdir(path)

獲取所有待轉(zhuǎn)換的csv文件

# 獲取所有待轉(zhuǎn)換的csv文件  返回列表
def list_csv():
    file_path = input('請輸入你存放csv文件的路徑:')
    p = Path(file_path)
    csv_files = p.glob('**/*.csv')
    csv_files = [str(csv_file) for csv_file in csv_files]
    return csv_files

將 csv 文件轉(zhuǎn)換為 xml 文件

# 將csv文件轉(zhuǎn)換為xml
def csv_to_xml(file_name):
    print(file_name)
    with open(file_name, 'r', encoding='utf-8') as f:   # 讀取csv文件
        reader = csv.reader(f)
        header = next(reader)   # 跳過表頭
        root = Element('Datas')
        print('root', len(root))
        # 處理轉(zhuǎn)換
        for row in reader:
            erow = Element('row')
            root.append(erow)
            for tag, text in zip(header, row):
                e = Element(tag)
                e.text = text
                erow.append(e)
    beatau(root)
    return ElementTree(root)


def beatau(e, level=0):
    if len(e) > 0:
        e.text = '\n' + '\t' * (level + 1)
        child = None
        for child in e:
            beatau(child, level + 1)
        child.tail = child.tail[:-1]
    e.tail = '\n' + '\t' * level

主函數(shù)調(diào)用

if __name__ == '__main__':
    csv_list = list_csv()
    print(csv_list)
    for index_, item in enumerate(csv_list, start=1):
        print(index_, item)
        et = csv_to_xml(item)
        et.write(path + '/' + 'test_{}.xml'.format(index_), encoding='utf-8')

結(jié)果如下:

用編輯器打開可以看到 xml 文件的內(nèi)容(我用的Sublime Text),如下所示

以上就是Python批量將csv文件轉(zhuǎn)化成xml文件的實例的詳細內(nèi)容,更多關(guān)于Python csv文件轉(zhuǎn)化成xml文件的資料請關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • Python pandas讀取CSV文件的注意事項(適合新手)
  • 使用Python pandas讀取CSV文件應該注意什么?
  • python 如何把classification_report輸出到csv文件
  • python刪除csv文件的行列
  • 使用python把json文件轉(zhuǎn)換為csv文件
  • python 如何讀、寫、解析CSV文件
  • python讀寫數(shù)據(jù)讀寫csv文件(pandas用法)
  • Python將list元素轉(zhuǎn)存為CSV文件的實現(xiàn)
  • 利用python 讀寫csv文件
  • Python如何讀寫CSV文件
  • 如何運用python讀寫CSV文件

標簽:上海 鷹潭 益陽 常德 黔西 黑龍江 惠州 四川

巨人網(wǎng)絡通訊聲明:本文標題《Python批量將csv文件轉(zhuǎn)化成xml文件的實例》,本文關(guān)鍵詞  Python,批量,將,csv,文件,轉(zhuǎn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python批量將csv文件轉(zhuǎn)化成xml文件的實例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python批量將csv文件轉(zhuǎn)化成xml文件的實例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    紫云| 亳州市| 承德市| 县级市| 报价| 胶州市| 博野县| 岳西县| 张家川| 金坛市| 互助| 衢州市| 太谷县| 芜湖县| 城步| 抚远县| 哈巴河县| 郧西县| 卓尼县| 武鸣县| 武邑县| 四会市| 衡阳县| 琼结县| 平阴县| 南郑县| 宿州市| 确山县| 包头市| 临邑县| 攀枝花市| 灵石县| 隆尧县| 阳高县| 阿尔山市| 叶城县| 平安县| 蕲春县| 木兰县| 璧山县| 运城市|