2、文件的几种操作方式: r(只读).w(只写).a(追加)
2、文件的几种操作方式: r(只读).w(只写).a(追加)
凡是带b的不用encoding
只有是r模式,mode='r'可以忽略不写
读模式:
*r 只读
read
read(n)
readline
readlines
for循环 最好的
rb bytes模式只读
*r+ 读写
r+b bytes模式读写
写模式:
*w 只写
1、没有文件创建文件写内容。
2、如果有文件,清空源文件,写入新内容
wb bytes模式只写
w+ 写读
w+b bytes模式写读
追加模式:
*a
1、没有文件创建文件写内容。
2、有文件则在最后面追加新内容
ab
a+
a+b
补充:
gbk,utf-8
s1 = '123abc*'
b1 = s1.encode('utf-8')
b2 = b1.decode('gbk')
print(b2) #结果:123abc*
收看葫芦娃
好看不
欢迎再来啊
你是鉴黄师?
r rb
r模式:
1、f.read() 全部读出来
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r')
print(f1.read())
f1.close()
2、f.read(n)
r模式:read(n) n 是按照字符读取
rb模式:read(n) n 是按照字节读取
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r')
print(f1.read(3))
f1.close()
3、f.readline() 按行读取,输出几次打印几行
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r')
print(f1.readline())
print(f1.readline())
print(f1.readline())
print(f1.readline())
f1.close()
4、f.readlines() 返回一个list,里面的元素是原文件里的内容
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r')
print(f1.readlines())
f1.close()
结果:['欢迎收看葫芦娃\n', '好看不\n', '欢迎再来啊\n', '你是鉴黄师?']
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r')
content = f1.readlines()
for line in content:
print(line)
f1.close()
5、for循环去读
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r')
for line in f1:
print(line)
f1.close()
rb模式:非文字类的文件
f1 = open('七个男人与一个女人', mode='rb')
print(f1.read())
f1.close()
r+模式:读写,先读后写(能读出之前的内容,新写进去的读不到)
r+模式如果先写后读,则内容写在最前面,读不到,但是可以读到原有的内容
f1 = open('七个男人与一个女人', encoding='utf-8', mode='r+')
print(f1.read())
f1.write('666')
f1.close()
r+b模式:读写,先读后写,bytes模式
f1 = open('七个男人与一个女人', mode='r+b')
print(f1.read())
f1.write('666'.encode('utf-8'))
f1.close()
w wb模式
w(只写模式):
1、没有文件,创建文件写内容
2、如果有文件,清空原文件写入新内容
f1 = open('log1', encoding='utf-8', mode='w')
f1.write('葛龙你为什么这么好')
f1.close()
wb模式:
f1 = open('log1', mode='wb')
f1.write('葛龙你为什么这么好1111'.encode('utf-8'))
f1.close()
w+:先写后读
f1 = open('log1', encoding='utf-8', mode='w+')
f1.write('天天上课太累了aa')
f1.seek(3) #按字节移动光标
print(f1.read())
f1.close()
w+b模式:
f1 = open('log1', mode='w+b')
f1.write('天天上课太累了aa'.encode('utf-8'))
print(f1.read())
f1.close()
a ab模式:
1、没有文件,创建文件写内容
2、如果有文件,直接在原文后面追加新内容
a模式:
f1 = open('log1', encoding='utf-8', mode='a')
f1.write('葛龙你为什么这么好1111')
f1.close()
ab模式:
f1 = open('log1', mode='ab')
f1.write('葛龙你为什么这么好1111'.encode('utf-8'))
f1.close()
a+模式:追加可读
f1 = open('log2', encoding='utf-8', mode='a+')
f1.write('赶紧学习完')
print(f1.read())
f1.close()
ps:非文字文件的读取
f1 = open('11.jpg', mode='rb')
girl = f1.read()
f1.close()
f2 = open('大胸女.jpg',mode='wb')
f2.write(girl)

浙公网安备 33010602011771号