91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

發布時間:2020-09-16 15:27:02 來源:腳本之家 閱讀:129 作者:隨風行云 欄目:開發技術

本文實例講述了Python打開文件、文件讀寫操作、with方式、文件常用函數。分享給大家供大家參考,具體如下:

打開文件:

在python3中,打開文件的函數是:

open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)

參數說明:

file--文件名
mode—打開模式,默認只讀模式
buffering--如果buffering的值被設為0,就不會有寄存。如果buffering的值取1,訪問文件時會寄存行。如果將buffering的值設為大于1的整數,表明了這就是的寄存區的緩沖大小。如果取負值,寄存區的緩沖大小則為系統默認。
encoding—打開文件的編碼方式 

模式介紹:

r:只讀模式(默認)

w :只寫模式,如果文件不存在就創建,如果存在,寫入的數據會覆蓋原來的數據

b :二進制模式

t :文本模式

+:可寫可讀模式

a:追加模式,如果文件存在則文件指針指向文件末尾(追加數據),如果不存在就創建

r+:讀追加模式,先讀,再追加

w+:寫讀模式,先寫,意味著原本內容丟失,再讀。  

  • 如果對于含有非ascll字符的文件,必須使用encoding,否則會拋異常:

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

print("r".center(50,'-'))
f=open("file.txt",encoding="utf-8")
print(f.read())
f.close()
-----------------
運行結果:
my
sas
aaa
fsafsa
中文
中文
葫蘆娃

文件使用完畢后必須關閉: 文件指針.close() 


文件操作:

讀操作:

讀取文件內容如下:

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

  • reads()是讀出全部內容
print("r".center(50,'-'))
f=open("file.txt",encoding="utf-8")
print(f.read())
f.close()
---------------------------
運行結果:
my
sas
aaa
fsafsa
中文
中文
葫蘆娃
  • readline()是讀出一行
print("r".center(50,'-'))
f=open("file.txt",encoding="utf-8")
print(f.readline())
f.close()

-----------
運行結果:
my
  • readlines()是讀出全部內容,并整理成一個列表
print("r".center(50,'-'))
f=open("file.txt",encoding="utf-8")
print(f.readlines())
f.close()




#------------------------r-------------------------
#運行結果:
['my\n', 'sas\n', 'aaa\n', 'fsafsa\n', '中文\n', '中文\n', '葫蘆娃\n', '\n']
  • r+模式會根據讀的內容來決定指針的位置
print("r".center(50,'-'))
f=open("file.txt","r+",encoding="utf-8")
# print(f.readline())
f.write("hello mike")
f.close()

結果:

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

 

print("r".center(50,'-'))
f=open("file.txt","r+",encoding="utf-8")
print(f.readline())
f.write("hello mike")
f.close()

新結果:

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析 

寫操作:

  • write():將一個字符串寫入文件
myfile=open("myfile1","wb")
myfile.write(b"nnnnnn")
myfile.write("my葫蘆娃".encode("utf-8"))
myfile.close()
  • writelines(可迭代對象) 將一個可迭代對象寫入文件
myfile=open("myfile1","wb")
myfile.write(b"nnnnnn")

myfile.writelines([b'1',b'2',b'3',b'4'])
myfile.close()
  • 當需要寫完之后即時讀出來時,使用w+,然后將文件指針置回文件頭:
myfile=open("myfile1","wb+")
myfile.write(b"nnnnnn")
myfile.seek(0)
print(myfile.read())
myfile.close()
      • 如果是需要讀出特定位置,可以使用變量來記錄位置
myfile=open("myfile1","wb+")
myfile.write(b"1nnnnnn")
site=myfile.tell()
myfile.write(b"2nnnnnn")
myfile.seek(site)##讀出后一段
print(myfile.read())
myfile.close()

with:

  • 為了便捷的關閉文件,python增加了with功能,當with體執行完將自動關閉打開的文件:
with open("file.txt","r+",encoding="utf-8") as f:##將自動執行f.close()
 print(f.tell())
 f.write("金剛")
 for line in f:
  print(line,end="")
  • 可以同時打開多個文件:
with open("file.txt",'r') as f ,\
open("file.new",'r') as m:
 print(f.read(),m.read())

文件常用函數:

file.close():關閉文件。關閉后文件不能再進行讀寫操作

file.seek(offset[, whence]):設置文件當前位置

file.tell():返回文件當前位置。

myfile=open("myfile1","wb+")
myfile.write(b"1nnnnnn")
site=myfile.tell()
myfile.write(b"2nnnnnn")
myfile.seek(site)##讀出后一段
print(myfile.read())
myfile.close()

file.flush():刷新文件內部緩沖,立即把內部緩沖區的數據寫入文件,因為并不是馬上將文件

import time
myfile=open("myfile1","wb+")
myfile.write(b"1nnnnnn")
time.sleep(10)
# myfile.flush()
myfile.write(b"2nnnnnn")
myfile.close()

上述代碼,直到程序運行完成才一次性寫入“1nnnnnn2nnnnnn”

import time
myfile=open("myfile1","wb+")
myfile.write(b"1nnnnnn")
myfile.flush()
time.sleep(10)
myfile.write(b"2nnnnnn")
myfile.close()

上述代碼,可以看到,在程序sleep之前就已經寫入了“1nnnnnn”

file.truncate([size]):截取文件,從文件開頭,截到指定位置,會覆蓋原文件。

文件內容:

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

print("r".center(50,'-'))
f=open("file.txt","r+",encoding="utf-8")

print(f.readline())
print("----truncate()-------")
print(f.tell())
m=f.tell()
f.truncate(m)#內容從0位置截斷到指定位置,不論當前光標位置
f.close()

執行后,文件內容:

Python打開文件、文件讀寫操作、with方式、文件常用函數實例分析

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

会同县| 清水县| 白河县| 彭泽县| 长葛市| 互助| 青阳县| 大厂| 博乐市| 大庆市| 枣强县| 隆回县| 萝北县| 荥经县| 肇东市| 康马县| 漯河市| 时尚| 天津市| 玛曲县| 南木林县| 柘城县| 逊克县| 定结县| 磴口县| 金沙县| 新干县| 昌江| 罗甸县| 乐都县| 饶阳县| 涟水县| 醴陵市| 岳普湖县| 南京市| 南雄市| 阜新市| 德兴市| 民和| 毕节市| 连平县|