一、文件的读写
1、文件的读取
解决编码问题
常见的报gbk错误
修改文件编码格式:先改编码,再写文字
正确显示:
python中查看编码格式:
总结:
file.readlines()[1] 返回值是列表,可以进行列表的索引和切片操作
readlines有换行符,print也有换行符,所以结果是两个换行符
splitlines() 切割行, 以行为切割,所以没有换行符
2、文件的写入
open(参数1,参数2) 参数1:路径 ; 参数2:读写的模式r/w/a ; a:追加写入 ; r是缺省值
w会覆盖,a是追加
w和a 不能r r 不能w和a
读写不能共存
不能读写的原因:
python中注重光标的位置,读的时候光标在花的后面
解决:
让光标回到行首
3、
seek(0) 光标回到行首,不偏移
汉字占两个字节
4、with open() 用法与open()一样,并且可以同时处理多个文件,不需要写close()方法
5、write()方法必须写str类型的参数
一、字典
1、存放若干个键值对的对象就是字典
2、字典是无序的,(列表是有序的,因为有下标索引)
3、字典可以存放
键可以存放:数字、字符串、元组,不可以存放列表,字典
键可以存放不可变对象,不能存放可变对象
值可以存放任意对象
字典属于可变对象,可以进行增删改
字典的键是唯一的,以后输入的为准
4、字典会自己判断新增还是修改,新增修改语句一致dict9['B']=apple
如果有,则修改,如果没有,则报错
5、update() 可以添加修改多个
6、del [键] 删除字典中的键值对
7、dict10={} 重新定义
dict10.clear() 清空字典中的键值对
8、遍历字典中的键值对
for k,v in dict11.items()
9、遍历键&值
for k in dict11.keys()
for v in dict11.values()
10、布尔表达式
判断某个对象是否在字典中,根据键判断,而不是值
11、json模块
json格式,本质是字符串,像字典
键和值都是双引号,总体外面是三引号
str1_new=json.loads(str1) 将json格式转为字典
str2=json.dumps(str1_new) 将字典转为json