python笔记-常见的文件编码和处理(csv、json、xml)01

本文介绍了Python处理不同编码数据的方法,包括使用csv库读写CSV,json模块处理JSON数据,xml.etree.ElementTree模块解析XML,以及base64模块进行Base64编码解码。通过实例详细讲解了各步骤和注意事项。
摘要由CSDN通过智能技术生成


前言

经常需要使用 Python 处理各种不同方式编码的数据,比如 CSV 文件,JSON, XML 和二进制包装记录等等,这些都是很好的保存数据的方式,也是python非常擅长的。


1. 读写 CSV 数据

python中有专门的csv库供用户使用,并且相对比较完善,一般的csv处理使用这个包就够了
比如下方是一个名为test.csv的csv文件:

Symbol,Price,Date,Time,Change,Volume
"AA",39.48,"6/11/2007","9:36am",-0.18,181800
"AIG",71.38,"6/11/2007","9:36am",-0.15,195500
"AXP",62.58,"6/11/2007","9:36am",-0.46,935000
"BA",98.31,"6/11/2007","9:36am",+0.12,104800
"C",53.08,"6/11/2007","9:36am",-0.25,360900
"CAT",78.29,"6/11/2007","9:36am",-0.23,225400

那么如何将其读写为一个元组呢,示例如下

import csv
with open('testtcsv') as f:
	f_csv = csv.reader(f)
	headers = next(f_csv)
	for row in f_csv:
		print(row)

输出结果

['AA', '39.48', '6/11/2007', '9:36am', '-0.18', '181800']
['AIG', '71.38', '6/11/2007', '9:36am', '-0.15', '195500']
['AXP', '62.58', '6/11/2007', '9:36am', '-0.46', '935000']
['BA', '98.31', '6/11/2007', '9:36am', '+0.12', '104800']
['C', '53.08', '6/11/2007', '9:36am', '-0.25', '360900']
['CAT', '78.29', '6/11/2007', '9:36am', '-0.23', '225400']

row 会是一个列表。因此,为了访问某个字段,你需要使用下标,如 row[0] 访问 Symbol, row[4] 访问 Change.或者将他读到字典中去,比如

import csv
with open('test.csv') as f:
	f_csv =csv.DictReader(f)
	headers = next(f_csv)
	for row in f_csv:
		print(row)

输出结果:

root@tjsc:/opt# python test.py 
{
   'Symbol': 'AIG', 'Price': '71.38', 'Date': '6/11/2007', 'Time': '9:36am', 'Change': '-0.15', 'Volume': '195500'}
{
   'Symbol': 'AXP', 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天骄书虫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值