python的檔案操作方法彙總

2022-10-06 05:00:10 字數 4289 閱讀 2193

檔案的讀操作

示例:print程式設計客棧("->檔案控制代碼的獲取,讀操作:")

f = open('無題','r',encoding='utf8')

d = f.read()

f.close()

print(d)

print('->例二:')

f = open('無題','r',encoding='utf8')

e = f.read(9)

f.close()

print(e)

#python3中,檔案中乙個中英文都佔位1

執行結果:

複製**

->檔案控制代碼的獲取,讀操作:

昨夜星辰昨夜風

畫樓西畔桂堂東

身無綵鳳雙飛翼

心有靈犀一點通

->例二:

昨夜星辰昨夜風

畫檔案的寫操作

知識點:

1. 寫操作前,檔案先格式化清空檔案

2.清空操作,在執行open的w方法後,清空

print("寫的操作,寫檔案的時候,不能呼叫讀方法,讀檔案的時候,不能呼叫寫方法")

f = open('python','w',encoding='utf8')

f.write("i must learn python \nbecause, python is important \n")

f.write("j**a is better?")

f.write("maybe") #上面的語句,沒有加換行符,所以輸出的內容是緊接的

f.close()

執行結果:

開啟檔案後顯示如下

i must learn python

because, python is important

j**a is better?maybe

檔案的append方法

語法格式:

f = open('檔名','a','encoding = utf8')

檔案這種方法為追加模式:1, 空白檔案中,直接從頭開始寫入內容; 2 有內容的檔案,會在末尾開始繼續寫入內容

示例:f = open('python','a',encoding='utf8')

f.write("花開又花落")

f.close()

執行結果:

i must learn python

because, python is important

j**a is better?maybe花開又花落

readline 和 readlines

readline是逐行讀取

readlines是全文讀取

示例:print("readline方法")

f = open('無題','r',encoding='utf8')

a = f.readline()

print("此時游標位置:",f.tell())

b = f.readline()

print("此時游標位置:",f.tell())

print(a.strip()) #strip是字串方法中去除空格和換行的方法

print(b.strip())

print("readlines方法,會將每行的內容組成乙個列表列印")

f = open('無題','rfizony',encoding='utf8')

c = f.readlines()

print(c)

print(id(c))

print(id(f))

for i in c:

print(i.strip())

print("遍歷方法")

f.seek(0)

for i in f:

print(i.strip())

f.close() #檔案的操作中,close()方法一定不能忘記

執行結果:

readline方法

此時游標位置: 23

此時游標位置: 46

昨夜星辰昨夜風

畫樓西畔桂堂東

readlines方法,會將每行的內容組成乙個列表列印

['昨夜星辰昨夜風\n', '畫樓西畔桂堂東\n', '身無綵鳳雙飛翼\n', '心有靈犀一點通']

37826824

5344280

昨夜星辰昨夜風

畫樓西畔桂堂東

身無綵鳳雙飛翼

心有靈犀一點通

遍歷方法

昨夜星辰昨夜風

畫樓西畔桂堂東

身無綵鳳雙飛翼

心有靈犀一點通

檔案的tell() 和 seek()方法

示例:f = open('無題','r',encoding='utf8')

f.read(4)

print('當前游標位置',f.tell())

f.seek(10)

print('當前游標位置',f.tell())

f.close()

#read時,乙個中文算三個字元

執行結果:

當前游標位置 12

www.cppcns.com當前游標位置 10

檔案操作之flush方法

import sys,time

for i in range(20):

sys.stdout.write("#")

sys.stdout.flush()

time.sleep(1)

truncate方法

f = open('test',程式設計客棧'w')

f.write("hello")

f.write("\n")

f.write("python")

f.flush() #這樣不用執行close方法,記憶體中的資料,就會寫入到disk

f.close()

f = open('test','a')

f.truncate(2) #截斷方法,游標從2開始往後擷取

f.close()

其他的檔案方法: r+ 讀寫方法

基於字元read & write

最基本的檔案操作當然就是在檔案中讀寫資料。這也是很容易掌握的。現在開啟乙個檔案以進行寫操作:

filehandle = open ( 'test.txt', 'w' )

『w'是指檔案將被寫入資料,語句的其它部分很好理解。下一步就是將資料寫入檔案:

filehandle.write ( 'this is a test.\nreally, it is.' )

這個語句將「this is a test.」寫入檔案的第一行,「really, it is.」寫入檔案的第二行。最後,我們需要做清理工作,並且關閉檔案:

filehandle.close()

正如你所見,在python的物件導向機制下,這確實非常簡單。需要注意的是,當你再次使用「w」方式在檔案中寫資料,所有原來的內容都會被刪除。如果想保留原來的內容,可以使用「a」方式在檔案中結尾附加資料:

filehandle = open ( 'test.txt', 'a' )

filehandle.write ( '\n\nbottom line.' )

filehandle.close()

然後,我們讀取test.txt,並將內容顯示出來:

filehandle = open ( 'test.txt' )

print filehandle.reafizonyd()

filehandle.close()

以上語句將讀取整個檔案並顯示其中的資料。

基於行的讀寫 line

filehandle = open ( 'test.txt' )

print filehandle.readline() # "this is a test."

filehandle.close()

同時,也可以將檔案內容儲存到乙個list中:

filehandle = open ( 'test.txt' )

filelist = filehandle.readlines()

for fileline in filelist:

print '>>', fileline

filehandle.close()

或者在檔案中一次讀取幾個位元組的內容:

filehandle = open ( 'test.txt' )

print filehandle.read ( 1 ) # "t"

filehandle.seek ( 4 )

print filehandle.read ( 1 ) # " "(原文有錯)

本文標題: python的檔案操作方法彙總

本文位址:

Python 字典操作方法彙總

字典是另一種可變容器模型,且可儲存任意型別物件。字典的每個鍵值 key value 對用冒號 分割,每個鍵值對之間用逗號 分割,整個字典包括在花括號 中 格式如下所示 d 1,訪問字典裡的值 把相應的鍵放入熟悉的方括弧,如下例項 例項 usr bin python dict print dict n...

python集合的操作方法彙總

一 建立集合 變數名 變數名 set 序列 例如 變數名 set 元組,自動,字串 set print set 注意,true 會轉換成數字1進行比較,false會轉換成數字0進行比較 print type set 集合與之前列表 元組類似,可以儲存多個資料,但是這些資料是不重複的 具有自動去重功能...

python檔案操作方法

import os os 系統模組 裡面有很多關於檔案操作相關的方法 1.os.getcwd 方法是獲得當前的工作路徑 now path os.getcwd print now path 2.os.listdir 方法是列出該路徑下所有檔案及資料夾 print os.listdir now path...