文件操作

文件操作:

 1 f1 = open('demo.txt')#如果文件不存在则报错
 2 f2 = open('demo','w')#如果没有此文件则新建demo文件
 3 f2.close()#关闭文件
 4 f2.closed#如果此文件正在打开 返回False 如果文件没有被打开则返回True
 5 f2.encoding#显示文件打开的编码方式(与源文件以什么方式便如何存放在硬盘上无关)
 6 f2.flush()#刷新内容
 7 f2.flush()#是否是终端设备 
 8 f2.name#文件名
 9 f2.tel()l#光标所在位置 返回一个数 即光标位置(注意换行的\r\n共为两个字节 汉字为三个字节)首先执行f2.readline() 则返回值为大于0的数值 直接执行返回值为0
10 f2.open('demo','r',encoding='utf-8',newline='')#显示换行后面的\r\n
11 f2.seek(x)#控制光标移动到x位置 如果出现汉字有可能会报错---->seek的数值不对
12 f2.read()#读取字节 *****除了read方法读取字节 其余的以字节方式读取seek
13 f2.truncate(x)#截取x个字节

 

 

1 f1 = open('demo','w',encoding='utf-8')#写文件 w模式打开直接覆盖demo.txt 以utf-8形式从硬盘上翻译出来
2 f2 = open('demo','r',encoding='gbk')#读文件 demo.txt格式,gbk
3 f3 = open('demo','a',encoding='gbk')#写文件 在demo.txt后面追加内容
4 f4 = open('demo','a+',encoding='gbk')#以追加的方式读写文件
5 f5 = open('demo','r+',encoding='gbk')#读写文件,从光标处覆盖文件内容 添加新内容 
6 f6 = open('demo','w+',encoding='gbk')#写读模式

 

 1 读文件:
 2 
 3 f = open('demo.txt',encoding='utf-8')
 4 #res1 = f.read()
 5 res2 = f.readline()
 6 res3 = f.readlines()
 7 #print(res1)
 8 print(res2) #读取部分文件时不能在前面操作read() 否则读取文件为空
 9 print(res3)
10 print(f.readable())#表示文件可读
11 f.close()
12 
13 
14 写文件:
15 
16 file = open('demo.txt','w',encoding='utf-8')
17 #ref = file.write('**********')#直接覆盖demo.txt文件
18 print(ref)
19 file.close()
20 
21 读写以及重命名:
22 
23 with open('z.txt','r',encoding='utf-8') as zzz,\
24     open('zz.txt','w',encoding='utf-8') as zzz2:
25     data = zzz.read()
26     zzz2.write('打开z.txt文件 只读 重命名为zzz并且打开zz.txt 只写 重命名(as)为zzz2;读取zzz.txt的内容 写内容给zzz.txt')

 字节B方式与文件:

1:(ab)

1 #f = open('demo.txt','rb',encoding='utf-8')#binary mode doesn't take an encoding argument  指定编码方式为二进制 不能以utf-8编码
2 f = open('字节方式与文件.txt','rb')#---以二进制的形式编码
3 f1 = f.read()
4 print(f1)
5 print(f1.decode('utf-8'))#解码以UTF-8的形式
6 f.close()

2:(wb)

字符串转换成bytes类型:

1 f = open('字节方式与文件','wb')
2 f1 = f.write(bytes('111112222\n',encoding='utf-8'))#转换字符串为bytes类型 编码为(encode)
3 f2 = f.write('111213513311\n'.encode('utf-8'))#效果同上
4 f.close()                

3:(ab)

1 #'ab':在结尾追加要write的内容
2 f = open('字节方式与文件','ab')
3 f.write('sdjaskfnsdl'.encode('utf-8'))

 

posted @ 2018-06-04 19:06  容颜-gl  阅读(225)  评论(0编辑  收藏  举报