Python文件操作
2017-07-16 22:48
363 查看
一、集合
集合是无序的,本身自带去重属性
理解:集合解决了判断一个元素是否在列表中的问题,不用通过循环的方式一一去比对,减少了内存的消耗。
1.集合的书写形式
(1)第一种形式
2.集合运算
列表,字典,集合判断一个字符是否存在均使用x in s
二、文件操作
1.文件的打开与读取
读取所有文件内容
写入模式(不可读,不存在则创建、存在则删除内容)
返回文件的当前位置读/写指针在文件位置
虽然Python有回收机制,但是在对文件进行操作时常常忘记关闭,可采用以下方式打开文件
1.在python2默认编码是ASCII, python3里默认是unicode
2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间
3.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string
集合是无序的,本身自带去重属性
理解:集合解决了判断一个元素是否在列表中的问题,不用通过循环的方式一一去比对,减少了内存的消耗。
1.集合的书写形式
(1)第一种形式
list=[1,4,5,3,5,6,7,9] #去重 list1 = set(list) #交集(intersection) list2 = set([2,4,6,88,66,77]) print(list1.intersection(list2)) #并集(union) print(list1.union(list2)) #差集(difference) print(list1.difference(list2)) list3 = set([4,6]) #子集(issubset)print(list3.issubset(list1)) #父集(issuperset) print(list1.issuperset(list3)) #对称差集(取两个列表均没有的symmetric_difference) print(list1.symmetric_difference(list2)) list4 = set([200,100]) #list1和list2在没有相同项的时候返回True,否则返回False print(list1.isdisjoint(list2))(2)第二种形式
#交集 a = list1 & list2 #并集 a = list2 | list2 #差集 a = list1 - list2 #对称差集 a = list1 ^ list2
2.集合运算
#增 list1.add(99) list1.update([15,20,18]) #删 list1.remove(15) list1.discard(99)注意:在进行删除操作时,remove不存在时会报错,而discard不会
列表,字典,集合判断一个字符是否存在均使用x in s
二、文件操作
1.文件的打开与读取
f = open("yesterday",encoding="utf-8")读取文件
读取所有文件内容
f.read()读取一行文件
f.readline()读取所有文件内容,并将文件内容变成列表的形式,不推荐使用,消耗内存。
f.readlines()推荐使用以下方式进行文件读取
for line in f: if count == 9: print('--------我是分割线---------') count +=1 continue print(line) count +=12.文件模式
写入模式(不可读,不存在则创建、存在则删除内容)
f = open("yesterday","W",encoding="utf-8")追加模式
f = open("yesterday",a",encoding="utf-8")3.二进制的处理
f = open("test","rb") f = open("test","wb) f = open("test","ab")4.文件的定位与修改
返回文件的当前位置读/写指针在文件位置
f.tell()用于移动文件读取指针到指定位置
f.seek()文件修改
f = open("yesterday","r",encoding="utf-8") f_new = open("yesterday2","w",encoding="utf-8") for line in f: if "" in line: line = line.replace("self","new") f_new.write(line)5.其他方法
#声明文件编码 f.encoding #获取文件名称 f.name #截取字符 f.truncate(10) #关闭文件 f.close()三、with语句
虽然Python有回收机制,但是在对文件进行操作时常常忘记关闭,可采用以下方式打开文件
with open('log','r') as f: ...四、字符编码与转码
1.在python2默认编码是ASCII, python3里默认是unicode
2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间
3.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string
相关文章推荐
- python excel文件的append data (不覆盖之添加操作)
- Python 文件操作
- python中对文件、文件夹操作
- 使用 Python 进行稳定可靠的文件操作
- python 文件操作
- python 文件操作与函数式编程
- 简单文件操作python 修改文件指定行的方法
- Python常见文件操作函数示例
- Matlab和Python操作文件路径的一些函数的比较
- 关于python文件操作
- Python文件夹与文件的操作 ZZ
- Python OS 文件操作模块常用函数
- python学习笔记之文件操作
- 17.2.28 python 移动文件或文件夹操作
- Python中的文件IO操作(读写文件、追加文件)
- Python 文件夹及文件操作
- python_day3函数及文件操作
- 同时安装了python2和python3如何便捷的执行文件和pip操作
- Python:文件操作
- python 文件操作