python数据存储详解(JSON,CSV,EXCEL)

本文详细介绍了Python中处理JSON字符串、CSV文件和Excel文件的方法。内容包括JSON的格式特点,如何将Python对象转换成JSON字符串以及反向转换,CSV文件的读写操作,以及Excel文件的Sheet和Cell操作,提供了丰富的示例代码。
摘要由CSDN通过智能技术生成

JSON字符串处理:

什么是JSON字符串:

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。更多解释请见:https://baike.baidu.com/item/JSON/2462549?fr=aladdin
JSON支持数据格式:
对象(字典):使用花括号。
数组(列表):使用方括号。
字符串类型:字符串必须要用双引号,不能用单引号)。
整形、浮点型、布尔类型还有null类型。
多个数据之间使用逗号分开。
注意:json本质上就是一个字符串。

将Python对象dump成JSON字符串:

  1. dumps:把Python对象转换成JSON格式的字符串。
  2. dump:把Python对象转换成JSON格式的字符串,并且还可以接收一个文件指针fp参数,可以写入到文件中。

这两个方法都有一个ensure_ascii参数,默认情况下这个参数的值是True,也就是说转换后的JSON字符串是只能存储ascii格式的,不能存储中文,如果想要存储成中文,那么可以将他设置为False。

示例:

import json

books = [
    {
   
        '姓名':'张三',
        '年龄':'24'
    },
    {
   
        '姓名': '李四',
        '年龄': '21'
    }
]

#dumps函数:把Python对象转换成JSON格式的字符串。
result = json.dumps(books)
print(result)  #打印出的内容为Unicode编码,怎么显示中文?添加参数:ensure_ascii=False即可,如下:
result = json.dumps(books,ensure_ascii=False)
print(result)

#dump函数:把Python对象转换成JSON格式的字符串,并且还可以接收一个文件指针fp参数,可以写入到文件中。
fp = open('存储文档.json','w',encoding='utf-8-sig')  #先创建要存储数据的文档
json.dump(books,fp,ensure_ascii=False)  #把python对象books转换为JSON字符串,并存储进fp文档中。
fp.close()  #open后要close

将JSON字符串load成Python对象:

  1. loads:将JSON字符串转换成Python对象。
  2. load:将JSON字符串转换成Python对象,并且是直接从文件中获取JSON字符串。
    示例:
import json

#将json字符串转换为python对象
json_str = '[{"姓名": "张三", "年龄": "24"}, {"姓名": "李四", "年龄": "21"}]'
result = json.loads(json_str,encoding='utf-8')
print(result)

#将json字符串的文件转换为python对象
with open('存储文档.json','r',encoding='utf-8') as fp:
    result = json.load(fp)
    print(result)

CSV文件处理:

CSV文件读取的两种方式:

示例:

  1. csv.reader(‘文件名’,‘r’)的方式读取到的是一组列表,通过下表的方式可以获取到某一列的内容。
  2. csv.DictReader(‘文件名’,‘r’)的方式读取到的是一组字典,通过字典中某一key值可以获取到该列的内容。
import csv

# 这种方式读取到的每一条数据是一个列表,所以需要通过下标的方式获取具体某一个值
# with open("stock.csv",'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值