第八节课 python file文件

版权声明: https://blog.csdn.net/qq_41921333/article/details/80686641
#1.文件
#*** open(文件路径,打开的模式如r)返回file对象 +有读写和创建
#r:读
#w:写
#a:追加
#rb:读二进制
#wb:写二进制
#r+:打开拥有读写
#w+:打开文件用于读写,有替换效果
#rb+:
#wb+:
#ab:二进制追加
#a+:存在追加,不存在创建后读写
#ab+:二进制,存在追加,不存在创建后读写

#读文件
files=open("ceshi.txt","r",encoding="utf-8")
strs=files.read(2)#读文件指定返回到字符
print(strs)
print(files.tell())#返回文件位置
files.close()

files=open("ceshi.txt","r",encoding="utf-8")
strss=files.readline()#返回一行,没有返回空字符
print(strss)
files.close()

files=open("ceshi.txt","r",encoding="utf-8")
strsss=files.readlines()#返回所以行
for i in  strsss:
    print(i)
files.close()

#写文件
filee=open("ceshi.txt","w",encoding="utf-8")
num=filee.write("xxx")#返回字符数
print(num)
filee.close()

#循环遍历file
#1
with open("ceshi.txt","r+") as f:
    print(f.read())
f.close()
#2
filex=open("ceshi.txt","r+")
for i in filex:
    print(i)
filex.close()

#seek(移动的步数,0|1|2)改变文件位置
#0默认从文件起始位置开始s
#1从文件当前位置开始
#2从文件末尾开始
f=open("num.txt","wb+")
f.write(b"a123456789bcd")#在文本文件中 (那些打开文件的模式下没有 b 的), 只会相对于文件起始位置进行定位。(不是字节)
num=f.seek(4)#返回位置下标
print(f.read(1))
f.seek(2,1)#当前位置算往后算0,1
print(f.read(1))
f.seek(-2,2)
print(f.read(1))
f.close()

#pickle模块序列化
#序列化将对象保存到文件
#反序列化将对象从文件取出
import pickle
#1,序列化


data1={'a':1,'b':2,'c':3}
fs=open("num.txt","wb")
pickle.dump(data1,fs)#保存到文件
fs.close()
#2.反序列化
data1={'a':1,'b':2,'c':3}
fx=open("num.txt","rb")
data=pickle.load(fx)#从文件解析
print(data)
fx.close()


#简单的爬虫
from urllib import  request

respose=request.urlopen("http://www.baidu.com/")

fi=open("baiduxx.html","w",encoding="utf-8")

page=fi.write(str(respose.read()))

fi.close()
import os
#好多好多》》》》》》》》》

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页