本文时学习python过程中的学习记录,方便复习。
1.TXT文件读写
- 打开方式(二进制形式【加b】/默认形式)
- 只读
- 只写
- 读写
- 追加
- 方法,函数
2.json文件读写
本质: 在1打开文件基础上,调用json库的方法
常用方法
- loads()将字符串转化为json对象
- dumps()将json对象转化为字符串
- indent=2,表示转为字符串时格式化,每行缩进2格
- ensure_ascii = False,且指定文件的输入编码,即可输入中文
json对象的取值
- jsonObj[‘name’]
- jsonObj.get(‘name’)
- 对比: 第二种方法,当键名不存在时,会返回None,或第二个参数————默认值(如get(‘name’, ‘Li’)
json数据写入文件
将json转为字符串,然后f.write(字符串)
读取
独处json数据后,将字符串转为json对象
注意
json数据要用双引号包括,不能用但引号,不然loads()方法会解析失败(如: {“name”: “ha”} )
3.csv文件
- 调用csv库,传入文件句柄,获得csv库封装的写入对象
- 常用写入对象方法
- csv.writer(fileObj)
- csv.DictWriter(fileObj)
csv.writer(fileObj)
1 | import csv |
也具有writerows()方法,一次写入多行,需要传入一个二维数组
csv.DictWriter(fileObj)
在进行数据获取时,经常会得到字典类型的数据,改写入对象方便对字典进行操作
1 | import csv |
csv文件读取
法一:
1
2
3
4
5
6import csv
with open('data.csv', 'r', encoding='utf-8') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
print(row)输出结果:
1
2
3
4
5
6['id', 'name', 'age']
['10001', 'Mike', '20']
['10002', 'Bob', '22']
['10003', 'Jordan', '21']
['10004', 'Durant', '22']
['10005', '王伟', '22']法二:
1
2
3
4import pandas as pd
df = pd.read_csv('data.csv')
print(df)输入结果:
1
2
3
4
5
6id name age
0 10001 Mike 20
1 10002 Bob 22
2 10003 Jordan 21
3 10004 Durant 22
4 10005 王伟 22