日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python文件读写库_【8】python文件的读写方法

發布時間:2025/1/21 python 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python文件读写库_【8】python文件的读写方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

(1)、讀文件的步驟:

(1)打開文件

open(path,flag,encoding,[errors])

path:打開路徑

flag:打開方式 r(只讀) rb(二進制格式) r+(可以讀寫)

w(只寫,存在覆蓋,不存在創建) wb(寫入二進制) w+(用于讀寫)

a(文件存在,追加) a+()

encoding:編碼方式

errors:錯誤處理

(2)讀取文件

(3)關閉文件

(2)讀取文件的幾種方法

#第二步:讀取文件內容 的四個方法

#1:方法1-讀取文件的全部內容[只適合讀取小的文件,不然費內存]

str1=f.read()print(str1)#2 方法2-讀取指定字符數

str2=f.read(10)print(str2)

str3=f.read(2)print(str3)'''輸出:

def proces

sF

總結:文件不關閉的情況下,讀完一次,指針在最后邊,繼續讀2個字符信息。'''

#3 方法3-每次讀取一行數據,包括‘\n’#str4=f.readline()

str4=f.readline(10) #表示讀取一行的10個字符

print(str4)#4 方法4-讀取方式4 讀取所有行并返回列表

list7=f.readlines()

list7=f.readlines(22) #每行讀取這么多

print(list7)

(3)關閉文件

#第三步:關閉文件

f.close()

【總結】:完整的兩種讀文件方式

方法1:

try:

f1=open(path,'r',encoding='utf8',errors='ignore')print(f1.read())except:print("文件讀取出錯!")finally:iff1:

f1.close()

方法2:帶with的自動關閉文件的方式

#方法2 with 自動關閉文件

path=r'E:\[AAA]全棧學習python\day2\file1.txt'

try:

with open(path) as file_obj:

content=file_obj.read()print(content)except:print("讀取失敗!")

一、原生態三步法寫入文件

#文件寫入

#第一步:打開文件

path=r"E:\[AAA]全棧學習python\day2\file2.txt"f=open(path,'w')#第二步:寫文件#1 這里其實只是先寫入了緩沖區,但是還沒得奧文件中去,需要刷新

f.write("jiajia is a beautiful girl333 !")#2 刷新緩沖區,就是立即寫入文件,不寫刷新就是關閉才能寫入文件

f.flush()#第三步:關閉文件

f.close()

說明: flush()是及時就寫入到文件中去,沒有這個flush的話 只會等到文件關閉的時候才會被寫入到文件。

【注意】:還有就是在寫入時候遇到'\n' 或者是緩沖區滿了也會自動刷新

案例2:用帶with自動關閉文件且追加的方式寫入

#案例2:用帶with自動關閉文件且追加的方式寫入

with open(path,'a') as file_obj:

file_obj.write("康忙北鼻是一個帥哥!")#file_obj.flush() #這種方式是不需要刷新與關閉操作的。

案例3

#1 普通寫入一個文件信息

path=r'E:\[AAA]全棧學習python\day3\file1.txt'with open(path,'w') as f1:

str="I love programming"str2="I also like write articles"f1.write(str)

f1.write(str2)'''輸出:

發現兩個寫入的文件信息都在一行顯示了。

I love programmingI also like write articles

解決辦法:

在每個str 中加上換行符即可!'''

#2每添加一段信息 ,帶換行信息寫入如何做呢!

path2=r'E:\[AAA]全棧學習python\day3\file2.txt'with open(path,'w') as f1:

str="I love programming\n"str2="I also like write articles \n"f1.write(str)

f1.write(str2)'''輸出

I love programming

I also like write articles'''

#3 附加到文件file2

with open(path2,'a') as file_obj:

file_obj.write("i am the first one!\n")

file_obj.write("I AM THE SECOND ONE!\n")'''輸出:

i am the first one!

I AM THE SECOND ONE!'''

二、二進制文件的寫入

案例1

# 存入和讀取二進制文件信息

path = r'E:\[AAA]全棧學習python\day3\file3.txt'

with open(path,'wb') as f1:

str_bytes='I am jiyongjia !'.encode('utf-8')

f1.write(str_bytes)

with open(path,'rb') as f2:

str2=f2.read()

print(str2)

print(type(str2))

'''

輸出、

b'I am jiyongjia !'

我們發現讀取的并不是字符串,所以并不好處理

'''

總結:我們發現讀取的并不是字符串,所以并不好處理

案例2:處理以上案例,讓讀取出的信息是一個str 方便處理

#讀取

with open(path,'rb') as f2:

str2=f2.read()print(str2.decode('utf-8'))print(type(str2.decode('utf-8')))'''輸出:

I am jiyongjia !

這里就是提取的字符串了;'''

所以,有時候我們需要把讀取到的數據進行解碼才行!

關于二進制的讀寫總結

# 總結:

如果是按照二進制打開文件的,要寫入或者讀取一定要編碼 解碼。

# 對于二進制的讀與寫,要進行對應結構的編碼與解碼,編碼和解碼用相同的方式才行。中文也可以解析出。

# 寫的時候:str_bytes='I am jiyongjia嘉 !'.encode('utf-8')

# 讀的時候:str2=f2.read().decode('utf-8')

'''

如果不進行decode解碼輸出的話會是:b'I am jiyongjia\xe5\x98\x89 !' 它是一個 非字符串,不好操作、

如果使用了decode 解碼再輸出的話,輸出結果是一個I am jiyongjia嘉 ! 它是一個

'''

方法一:使用pickle庫 來進行讀寫

import pickle #引入數據持久性模板

#1--使用 pickle 方式寫入進去。

mylist = [1,2,3,4,5,6,"jiajia","我是雷鋒"]#把這個list寫入文件4

path = r'E:\[AAA]全棧學習python\day3\file4.txt'f= open(path,'wb') #打開

pickle.dump(mylist,f)

f.close()#關閉

#讀取出來、

f2= open(path,'rb') #打開

templist=pickle.load(f2)print(templist)

f2.close()#關閉

'''輸出:

[1, 2, 3, 4, 5, 6, 'jiajia', '我是雷鋒']'''

方法二:使用json庫 來進行讀寫

說明:

json 文件 非常有用,因為我們往往需要在關閉程序前把程序所處理得到的數據進行保存,在下一次打開程序的時候再加載這些數據,這就要用到json。而且 json 數據是一種通用格式,通過json 就可以把數據打包分享給其他語言的程序員使用了,便于跨平臺操作。

#說明:#json 文件 非常有用,因為我們往往需要在關閉程序前把程序所處理得到的數據進行保存,#在下一次打開程序的時候再加載這些數據,這就要用到json。而且 json 數據是一種通用格式,#通過json 就可以把數據打包分享給其他語言的程序員使用了,便于跨平臺操作。

importjson#1 把列表存入到json 文件 即json.dump

list1=[1,12,3,4,5,6,"嘉嘉","jiajai"]

dict1={"1":"puyhon學習",'2':"Java學習"}

path= r'E:\[AAA]全棧學習python\day3\jsonfile1.json'with open(path,'w') as json_file:

json.dump(list1, json_file)#2 把json文件中的內容取出 即json.load

path= r'E:\[AAA]全棧學習python\day3\jsonfile1.json'with open(path) as f2:

file=json.load(f2)print("welcome back! 提取內容是:",file)

總結

以上是生活随笔為你收集整理的python文件读写库_【8】python文件的读写方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。