您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Python批量将csv文件转化成xml文件的实例

51自学网 2021-10-30 22:41:15
  python
这篇教程Python批量将csv文件转化成xml文件的实例写得很实用,希望能帮到您。

一、前言

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列,通常都是纯文本文件。

可扩展标记语言,标准通用标记语言的子集,简称XML。是一种用于标记电子文件使其具有结构性的标记语言。在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

二、Python代码实现

导入用到的库

from xml.etree.ElementTree import Element, ElementTreeimport csvfrom pathlib import Pathimport os

创建一个文件夹,用来保存转换后的xml文件

# 创建一个文件夹  用来保存转换后的xml文件path = os.path.join('xml_file')if not os.path.exists(path):    os.mkdir(path)

获取所有待转换的csv文件

# 获取所有待转换的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 文件转换为 xml 文件

# 将csv文件转换为xmldef 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))        # 处理转换        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

主函数调用

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')

结果如下:

用编辑器打开可以看到 xml 文件的内容(我用的Sublime Text),如下所示

以上就是Python批量将csv文件转化成xml文件的实例的详细内容,更多关于Python csv文件转化成xml文件的资料请关注51zixue.net其它相关文章!


python基础之爬虫入门
python保存大型 .mat 数据文件报错超出 IO 限制的操作
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。