python常用函数的用法_python3 文件操作常用函数用法示例
1. file.close()
關閉文件。關閉后文件不能再進行讀寫操作,需要重新打開才能進行讀寫。f = open('demo.text' , 'r') # 使用只讀方式打開文本
print(f.read()) # 打印demo.text文件內容
f.close() # 關閉文件
2. file.flush()
將緩存區中的數據立刻寫入文件,同時清空緩存區, 而不是被動的等待緩存數據寫入。f = open('demo.text' , 'w') # 使用只寫方式打開文本
print(f.write('test')) # 打印寫入demo.text文件的內容
f.flush() # 刷新緩沖區
f.close() # 關閉文件
注:該方法沒有參數和返回值
3. file.fileno()
該方法返回一個整型的文件描述符(file descriptor FD 整型),可以用在如os模塊的read方法等一些底層操作上。f = open("demo.txt", "wb") # 文件1:demo.text
print ("文件名為: ", f.name)
f1 = open("dem.txt", "wb") # 文件2:dem.text
print ("文件名為: ", f1.name)
f2 = open("d.txt", "wb") # 文件3:d.text
print ("文件名為: ", f2.name)
fid = f.fileno() # 調用file.fileno()方法
fid1 = f1.fileno()
fid2 = f2.fileno()
print ("文件描述符為: ", fid)
print ("文件描述符為: ", fid1)
print ("文件描述符為: ", fid2)
# 關閉文件
f.close()
f1.close()
f2.close()
#輸出:
文件名為: demo.txt
文件名為: dem.txt
文件名為: d.txt
文件描述符為: 3
文件描述符為: 4
文件描述符為: 5
4. ile.isatty()
如果文件連接到一個終端設備返回 True,否則返回 False。f = open('demo.text' , 'wb') # 使用只寫方式打開文本
print('文件名為:' , f.name) # 打印demo.text文件名,f.name調用文件名
te = f.isatty() # 刷新緩沖區
print ('返回值:', te)
f.close() # 關閉文件
#輸出:
文件名為:demo.text
返回值:False
5. file.read([size])
從文件讀取指定的字節數,如果未給定或為負則讀取所有。#假設文本內容為:qwer這是一個測試
f = open('demo.text' , 'r+') # 使用讀寫方式打開文本
test1 = f.read(4) # 設置讀取的字符數
print ('讀取的是:', test1)
f.seek(0) # 將指針移到首位
test2 = f.read(8) # 設置讀取的字符數
print ('讀取的是:', test2)
f.close() # 關閉文件
# 輸出:
讀取的是: qwer # 英文為1個字符
讀取的是: qwer這是一個 # 中文也為1個字符
6. file.readline([size])
讀取整行,包括 "\n" 字符。如果給它指定一個非負數的參數,那么將返回指定大小的字符數,包括 "\n" 字符#假設文本內容為:
1.這是第一行
2.這是第二行
3.這是第三行
f = open('demo.text' , 'r+') # 使用讀寫方式打開文本
line1 = f.readline()
print ("讀取第1行:{}" .format(line1))
line2 = f.readline(4)
print ("讀取的字符串為:{}" .format(line2))
f.close() # 關閉文件
# 輸出:
讀取第1行:1.這是第一行
讀取的字符串為:2.這是
7. file.readlines([sizeint])
讀取所有行并返回列表,可以使用for...in...循環處理列表數據,如果sizeint > 0,那么返回總和大約為sizeint字節的行, 實際讀取值可能比 sizeint 較大, 因為需要填充緩沖區。# 如果碰到結束符 EOF 則返回空字符串。
# 假設文本內容為:
1.這是第一行
2.這是第二行
3.這是第三行
f = open('demo.text' , 'r+') # 使用讀寫方式打開文本
for line in f.readlines(): # 依次讀取每行
line = line.strip() # 去掉每行頭尾空白
print ("讀取的數據:{}" .format(line))
# 關閉文件
f.close()
# 輸出:
讀取的數據:1.這是第一行
讀取的數據:2.這是第二行
讀取的數據:3.這是第三行
8. file.seek(offset, whence)
移動文件讀取指針到指定位置,它有兩個參數,分別是:offset --- 開始的偏移量,代表需要移動偏移的字節數,負數表示從倒數第幾位開始。
whence --- 可選參數,默認值為 0。給 offset 定義一個參數,表示從哪個位置開始偏移;0 代表從文件開頭開始算起,1 代表從當前位置開始算起,2 代表從文件末尾算起。#假設文本內容為:0123456
f = open('demo.text', 'rb+')
print(f.read()) # 輸出:b'0123456'
f.seek(3) # 移動到文件的第六個字節
print(f.read(1)) # 輸出:b'3'
f.seek(-4, 2) # 移動到文件倒數第三個字節
print(f.read(1)) # 輸出:b'5'
f.close() # 關閉文件
9. file.tell()
返回文件當前位置,即文件指針當前位置。#假設文本內容為:0123456
f = open('demo.text', 'r+')
print(f.read()) # 輸出:0123456
# 獲取當前文件位置
n = f.tell()
print ("當前位置: {}" .format(n)) #輸出:7
f.close() # 關閉文件
10. file.truncate([size])
從文件的首行首字符開始截斷,截斷文件為 size 個字符,無 size 表示從當前位置截斷;截斷之后后面的所有字符被刪除,其中 windows 系統下的換行代表2個字符大小。#假設文本內容為:
123
223
323
f = open('demo.text', 'r+') # 只讀方式打開文本
line = f.readline() # 讀取整行
print("讀取的數據:{}" .format(line)) # 輸出:讀取的數據:123
# 從當前位置截斷
f.truncate()
line = f.readlines() # 讀取所有行
print("讀取的數據:{}" .format(line)) # 輸出:讀取的數據:['223\n', '323']
f.close() # 關閉文件
11. file.write(str)
將字符串寫入文件,返回的是寫入的字符長度。#調用write()方法必須先擁有寫入權限
#假設文本內容為:123
f = open('demo.text', 'r+') #以讀寫模式打開文本
f.write('這是一個字符串') #write()會從頭開始寫入內容,并覆蓋原來的內容
f.seek(0) #將文本指針移到文首
print(f.read()) # 輸出:這是一個字符串
f.close() #關閉文本
12. file.writelines(sequence)
向文件寫入一個序列字符串列表,如果需要換行則要自己加入每行的換行符。f = open("test.text", "w+") #創建一個test文本文件,并以讀寫模式打開
s = ["python\n", "工程獅"] #創建一個名為s的字符串列表
f.writelines(s) #寫入字符串列表
f.seek(0) #將文本指針移到文首
print(f.read()) #打印文本內容
f.close() # 關閉文件
#輸出:
python
工程獅
總結
以上是生活随笔為你收集整理的python常用函数的用法_python3 文件操作常用函数用法示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: My New Game2
- 下一篇: python js返回 json_[py