Python学习 -- 常用数据交换格式(CSV、XML、JSON)

2023-09-15 15:35:48

数据交换格式是在不同系统之间交换数据时使用的一种标准化格式。在Python中,我们常用的数据交换格式有CSV、XML和JSON。本篇技术博客将介绍这三种数据交换格式的详细使用方法,并提供具体的代码案例,帮助初学者快速掌握这些格式的使用。

  1. CSV(逗号分隔值)格式 CSV是一种简单的文本文件格式,使用逗号作为字段之间的分隔符。下面是CSV格式的基本使用方法:

代码示例:

import csv

# 写入CSV文件
data = [
    ['Name', 'Age', 'City'],
    ['John', '25', 'New York'],
    ['Alice', '30', 'London'],
    ['Bob', '35', 'Paris']
]

with open('data.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)

# 读取CSV文件
with open('data.csv', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)
  1. XML(可扩展标记语言)格式 XML是一种具有自定义标签的文本文件格式,用于存储和传输数据。下面是XML格式的基本使用方法:

代码示例:

import xml.etree.ElementTree as ET

# 创建XML文件
root = ET.Element('root')

employee = ET.SubElement(root, 'employee')
name = ET.SubElement(employee, 'name')
age = ET.SubElement(employee, 'age')
city = ET.SubElement(employee, 'city')

name.text = 'John'
age.text = '25'
city.text = 'New York'

tree = ET.ElementTree(root)
tree.write('data.xml')

# 解析XML文件
tree = ET.parse('data.xml')
root = tree.getroot()

for employee in root.findall('employee'):
    name = employee.find('name').text
    age = employee.find('age').text
    city = employee.find('city').text
    print(name, age, city)
  1. JSON(JavaScript对象表示法)格式 JSON是一种轻量级的数据交换格式,以键值对的形式组织数据。下面是JSON格式的基本使用方法:

代码示例:

import json

# 创建JSON文件
data = {
    'employee': {
        'name': 'John',
        'age': 25,
        'city': 'New York'
    }
}

with open('data.json', 'w') as file:
    json.dump(data, file)

# 解析JSON文件
with open('data.json') as file:
    data = json.load(file)

name = data['employee']['name']
age = data['employee']['age']
city = data['employee']['city']

print(name, age, city)

总结:在本篇技术博客中,我们介绍了Python中常用的数据交换格式:CSV、XML和JSON。针对每种格式,我们提供了详细的使用方法和具体的代码案例。通过学习这些数据交换格式的使用,我们可以在不同系统之间方便地交换和处理数据。无论是简单的逗号分隔值、具有自定义标签的XML文件,还是轻量级的JSON格式,都能够满足不同的数据交换需求。通过多练习和实践,我们可以更加熟练地使用这些数据交换格式,提高我们数据处理和交互的效率。

图片

更多推荐

Python 10之异常模块包

😀前言在Python编程中,我们时常会遇到各种异常和错误,同时我们也会使用多个模块和包来组织和结构化我们的代码。理解如何有效地处理异常和组织我们的代码是成为一个成功的Python程序员的关键。.在本教程中,我们将深入探讨Python中的异常处理,从基本的异常捕获到更高级的异常处理技术,如指定错误类型和创建自定义异常。

【送书活动】大模型赛道如何实现华丽的弯道超车

文章目录导读模型训练01具备对海量小文件的频繁数据访问的I/O效率02提高GPU利用率,降低成本并提高投资回报率03支持各种存储系统的原生接口04支持单云、混合云和多云部署Alluxio01通过数据抽象化统一数据孤岛02通过分布式缓存实现数据本地性03优化整个工作流的数据共享04通过并行执行数据预加载、缓存和训练来编排

Matlab-resample

1.resample步骤1:低通滤波首先,resample函数会应用一个低通滤波器,以滤除输入信号中高于重采样频率的频率成分。这是为了防止混叠现象,即重采样后出现在新采样率频带之外的频率成分。在MATLAB中,默认使用一个FIR滤波器进行低通滤波,滤波器的设计根据重采样因子和滤波器长度来确定。此外,还要补偿由于滤波带的

Node.js

它们都是基于nodejs开发的WebpackViteBabelVSCodeFigmaPostman常用的命令行指令C:/D:切换盘符dir列出当前目录下的所有文件cd目录名进入到指定目录md目录名创建一个文件夹rd目录名删除一个文件夹.表示当前目录..表示上一级目录当我们在命令行窗口打开一个文件,或调用一个程序时,系统

JWT安全

文章目录JWT是什么?为什么要使用JWT?JWT的数据结构JWT的工作过程JWT是什么?JSONWebToken(JWT)是一个开放标准(RFC7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。JWT全称JSONWebToken,是一种传输信息的标准,用于JSON对象在各方之间

代码随想录算法训练营第58天 | ● 739. 每日温度 ● 496.下一个更大元素 I

文章目录前言一、739.每日温度二、496.下一个更大元素I总结前言单调栈;一、739.每日温度单调栈的本质是空间换时间,因为在遍历的过程中需要用一个栈来记录右边第一个比当前元素高的元素,优点是整个数组只需要遍历一次。更直白来说,就是用一个栈来记录我们遍历过的元素,因为我们遍历数组的时候,我们不知道之前都遍历了哪些元素

前端Layui框架介绍

当涉及到前端UI框架时,Layui(简称layui)是一个备受欢迎的框架之一。在这篇博客中,我们将深入了解layui,包括其市场占有率、开发语言、使用场景、框架特点以及一些使用案例。1.市场占有率Layui是一款流行的前端UI框架,在开发者社区中非常受欢迎。它的市场占有率在前端开发领域相当高,许多企业和开发者选择使用l

FreeSWITCH 1.10.10 简单图形化界面11 - 简单封装一下JSSIP

FreeSWITCH1.10.10简单图形化界面11-简单封装一下JSSIP0、界面预览1、前言2、demo地址3、简单演示4、demo代码FreeSWITCH界面安装参考:https://blog.csdn.net/jia198810/article/details/1324793240、界面预览http://myf

【vue.js】路由使用与Node.js下载安装之环境配置

🎬艳艳耶✌️:个人主页🔥个人专栏:《Spring与Mybatis集成整合》《springMvc使用》⛺️生活的理想,为了不断更新自己!目录1、路由1.1什么是路由1.2案列实操1.2.1引入vue-router的js依赖1.2.2定义组件1.2.3定义路由1.2.4将路由加入路由器1.2.5将路由挂载根实例1.2.

状态管理艺术——借助Spring StateMachine驭服复杂应用逻辑

文章目录1.什么是状态2.有限状态机概述3.SpringStateMachine4.SpringStateMachine入门小案例4.1接口测试5.总结1.什么是状态在开发中,无时无刻离不开状态的一个概念,任何一条数据都有属于它的状态。比如一个电商平台,一个订单会有很多状态,比如待付款、待发货、待收货、完成订单。而这其

互联网摸鱼日报(2023-09-18)

互联网摸鱼日报(2023-09-18)36氪新闻最前线|号外电摩12.68万元起订,配16.9度一体压铸电池包本周双碳大事:CCER交易管理办法获生态环境部原则通过;明阳斥资100亿元加码光伏项目;“全路程”获2亿元D轮融资200亿,贝佐斯投出全球最大天使轮12种自由职业者管理时间的高效方法开彩票站,还是一门好生意吗:

热文推荐