1. 寫資料(write)
使用write()可以完成向檔案寫入資料:
demo: 新建乙個檔案 file_write_test.py,向其中寫入如下**:
f =
open
('test.txt'
,'w'
)f.write(
'hello world, i am here'
)f.close(
)
執行之後會在file_write_test.py檔案所在的路徑中建立乙個檔案test.txt,其中資料如下:
注意:
2. 讀資料(read)
使用read(num)可以從檔案中讀取資料,num表示要從檔案中讀取的資料的長度(單位是位元組),如果沒有傳入num,那麼就表示讀取檔案中所有的資料。
demo: 新建乙個檔案file_read_test.py,向其中寫入如下**:
f =
open
('test.txt'
,'r'
)content = f.read(5)
# 最多讀取5個資料
print
(content)
print
("-"*30
)# 分割線,用來測試
content = f.read(
)# 從上次讀取的位置繼續讀取剩下的所有的資料
print
(content)
f.close(
)# 關閉檔案,這個可以是個好習慣哦
執行結果:
hello
------------------------------
world, i am here!
注意:3. 讀資料(readlines)
就像read沒有引數時一樣,readlines可以按照行的方式把整個檔案中的內容進行一次性讀取,並且返回的是乙個列表,其中每一行的資料為乙個元素。
f =
open
('test.txt'
,'r'
)content = f.readlines(
)print
(type
(content)
)i =
1for temp in content:
print
("%d:%s"
%(i, temp)
) i +=
1f.close(
)
執行結果:
1:hello world, i am here
4. 讀資料(readline)f =
open
('test.txt'
,'r'
)content = f.readline(
)print
("1:%s"
% content)
content = f.readline(
)print
("2:%s"
% content)
f.close(
)
執行結果:
1:hello world, i am here
2:
有些時候,需要對檔案進行重新命名、刪除等一些操作,python的os模組中都有這麼功能。
1. 檔案重新命名
os模組中的rename()可以完成對檔案的重新命名操作
rename(需要修改的檔名, 新的檔名)
import os
os.rename(
"畢業**.txt"
,"畢業**-最終版.txt"
)
2. 刪除檔案
os模組中的remove()可以完成對檔案的刪除操作
remove(待刪除的檔名)
import os
os.remove(
"畢業**.txt"
)
3. 建立資料夾import os
os.mkdir(
"張三"
)
4. 獲取當前目錄import os
os.getcwd(
)
5. 改變預設目錄import os
os.chdir(
"../"
)
6. 獲取目錄列表import os
os.listdir(
"./"
)
7. 刪除資料夾import os
os.rmdir(
"張三"
)
應用1:製作檔案的備份
任務描述:輸入檔案的名字,然後程式自動完成對檔案進行備份。
# 提示輸入檔案
oldfilename =
input
("請輸入要拷貝的檔案名字:"
)# 以讀的方式開啟檔案
oldfile =
open
(oldfilename,
'rb'
)# 提取檔案的字尾
fileflagnum = oldfilename.rfind(
'.')
if fileflagnum >0:
fileflag = oldfilename[fileflagnum:
]# 組織新的檔案名字
newfilename = oldfilename[
:fileflagnum]
+'[復件]'
+ fileflag
# 建立新檔案
newfile =
open
(newfilename,
'wb'
)# 把舊檔案中的資料,一行一行的進行複製到新檔案中
for linecontent in oldfile.readlines():
newfile.write(linecontent)
# 關閉檔案
oldfile.close(
)newfile.close(
)
應用2: 批量修改檔名# 批量在檔名前加字首
import os
funflag =
1# 1表示新增標誌 2表示刪除標誌
foldername =
'./renamedir/'
# 獲取指定路徑的所有檔案名字
dirlist = os.listdir(foldername)
# 遍歷輸出所有檔案名字
for name in dirlist:
print name
if funflag ==1:
newname =
'[東哥出品]-'
+ name
elif funflag ==2:
num =
len(
'[東哥出品]-'
) newname = name[num:
]print newname
os.rename(foldername+name, foldername+newname)
c基礎 6 檔案操作
1.讀檔案 2.寫檔案 三.fputs,fgets 行讀取和寫入 四.fprintf,fscanf格式化讀寫檔案內容 二.fwrite,fread二進位制的讀寫 stat 函式 fseek,ftell,rewind remove rename fflush 檔案流 重新整理快取 int main2 ...
Linux基礎 6 檔案IO操作
linux下一切皆檔案,所以檔案io是很重要的也是很基礎的操作。關於linux檔案io的操作主要有五個方面,分別是開啟,關閉,建立,寫與讀。我們先來看一下開啟檔案open函式 int open const char path,int oflags,mode t mode 引數path表示 路徑名或者...
Python基礎(18)檔案操作
在計算機中,檔案是以 二進位制 的方式儲存在磁碟上的 文字檔案和二進位制檔案 1.文字檔案 2.二進位制檔案 在計算機中要操作檔案的套路非常固定,一共包含三個步驟 開啟檔案2.讀 寫檔案 讀 將檔案內容讀入記憶體 read 寫 將記憶體內容寫入檔案 write 關閉檔案 序號函式 方法 說明01 o...