檔案的操作

2022-05-29 23:03:13 字數 2542 閱讀 3653

#  只要牽扯到檔案的操作,都是字串

#  開啟檔案用到『w』,原始檔內容會被清空(相當於新建)

#  sprip()  取消換行符

#  換行符2個位元組

一、開啟  (win    gbk     mac/linux    utf-8)

f = open('歌詞')    

# f:檔案操作符    檔案控制代碼   檔案操作物件

#  習慣叫 f   file   f_obj  f_handler  fh

#  print(f.wriable())  判斷檔案是否可寫

#  print(f.readable())  判斷檔案是否可讀

f.write('552716')    # 寫檔案的時候需要寫到數字,需要把數字轉換成字串

#  open 開啟檔案是依賴了作業系統提供的途徑

# 作業系統有自己的編碼,open在開啟檔案的時候預設使用作業系統的編碼

找到檔案

#找到檔案詳解:檔案與py的執行檔案在相同路徑下,直接用檔案名字就可以開啟

#:檔案與py的執行檔案在不同路徑下,用絕對路徑找到檔案

#檔案的路徑,需要用取消轉譯的方式來表示:1、\\     2、r『』

#如果以寫檔案的方式開啟乙個檔案,那麼不存在的檔案會被建立,存在的檔案之前的內容會被清空

f = open(r'

c:\users\administrator\desktop\day5作業參考.txt

','w

',encoding='

utf-8')

f.write(

'啦啦啦')

f.close()

關閉檔案#作業系統級別的關閉檔案資源: f.close()      必須寫

#del f   主動釋放了乙個python程式記憶體中的變數    可寫可不寫

二、讀檔案(預設了讀模式)

1、讀檔案的第一種方式(讀全部)

#開啟檔案

# f = open(『歌詞』,『r』,encoding='utf-8')

f = open('歌詞',encoding= 'utf-8')

1、讀檔案的第一種方式:read方法,用read方法會一次性的讀出檔案中的所以有內容

conten = f.read()

print(content)

f.close()

2、讀一部分內容

#讀一部分內容:read(n),指定讀n個單位

print(f.read(5))

3、第三種方式:按照行讀

每次執行readline就會往下讀一行

content =f.readline()

print(content.strip()) #

strip 去掉空格、製表符、換行符

#print(1) #-->1\n

print('

1\n') #

-->1\n\n

4、第四種:readlines(讀所有行)

content = f.readlines()

5、第五種(最常用)

for l in

f:

print

(l.strip())

三、rb

'rb'

#1. 開啟檔案的模式有(預設為文字模式):

r ,唯讀模式【預設模式,檔案必須存在,不存在則丟擲異常】

w,只寫模式【不可讀;不存在則建立;存在則清空內容】

a, 之追加寫模式【不可讀;不存在則建立;存在則只追加內容】

注:以b方式開啟時,讀取到的內容是位元組型別,寫入時也需要提供位元組型別,不能指定編碼

'rb'

a、追寫

四、『+』

#r+   可讀可寫:

#1、先讀後寫:寫是追寫

#2、先寫後讀:從頭開始寫

w+  可寫可讀

seek:游標的移動

###  一般情況下:檔案操作,要麼讀,要麼寫,很少會用到讀寫、寫讀同時用的

常用的:

r、w、a

rb、wb、ab。不需要指定編碼了

五、游標的移動

1、read

1. 檔案開啟方式為文字模式時,代表讀取3個字元

2. 檔案開啟方式為b模式時,代表讀取3個位元組

2、其餘的檔案內游標移動都是以位元組為單位如seek,tell,truncate

注意:1. seek有三種移動方式0,1,2,其中1和2必須在b模式下進行,但無論哪種模式,都是以bytes為單位移動的

f.seek(0)   移動到最開始

f.seek(0,2)移動到末尾

2. truncate是截斷檔案,所以檔案的開啟方式必須可寫,但是不能用w或w+等方式開啟,因為那樣直接清空檔案了,所以truncate要在r+或a或a+等模式下測試效果

檔案的操作

在檔案操作之前要匯入命名空間 system.io 讀寫檔案的步驟分為5步 1 建立檔案流 語法 filestream fd new filestream 檔案路徑 filemode 其中 filemode 是列舉型別的,列舉型別的主要作用是約定乙個變數的值的範圍 其中包括有 create 用指定名稱...

檔案的操作

openopen 內建函式,open底層呼叫的是作業系統的介面 f1,變數.f1,fh,file,file handler,f h 檔案控制代碼.通過對檔案的任何操作都會通過檔案控制代碼.的方式.encoding 可以不寫,不寫引數,預設編碼本.預設編碼本 作業系統的預設的編碼 檔案控制代碼 是乙個...

檔案的操作

路徑 開啟方式 編碼格式。不標註開啟方式預設為唯讀。f1 open d a.txt encoding utf 8 mode r f1 為檔案控制代碼,也叫檔案物件,所有的讀寫操作都是通過檔案控制代碼完成的 生成檔案控制代碼 檔案的讀 寫,檔案寫操作必須以寫形式開啟檔案,檔案讀操作必須以讀或讀寫操作開...