f = f.open(『test.txt』, 『w』)
w 開啟檔案,如有覆蓋,沒有建立
r 唯讀方式開啟(可以不寫,因為預設)
a 追加
rb 二進位制開啟唯讀
wb 二進位制開啟寫入,如有覆蓋,沒有建立
ab 二進位制追加
模式 | 可做操作 | 若檔案不存在 | 是否覆蓋
r | 只能讀 | 報錯 | -
r+ | 可讀可寫 | 報錯 | 是
w | 只能寫 | 建立 | 是
w+ | 可讀可寫 | 建立 | 是
a | 只能寫 |建立 | 否,追加寫
a+ | 可讀可寫 |建立 | 否,追加寫
f.close()
寫入檔案
f.write(『hello world!)
檔案不存在就建立,存在先清空在寫入資料
f.read() 讀取所有
f.read(num) 讀取num行
f.readlies() 把檔案內容一次性讀取,返回為列表,以行為元素
f.readline()讀取資料一行一行的讀
檔案的複製
1.獲取要複製的檔名
2.開啟要檔案(『r』)
3.建立乙個檔案
4.從原檔案讀取資料,寫入新檔案中
5.關閉兩個檔案
old_file_name = input('輸入檔名')
f_read = open(old_file_name, 'r')
position = old_file_name.rfind('.')
new_file_name = old_file_name[0:position]
f_write = open('new_file_name',『w』)
context = f_read.read()
f_write.write(context)
f_read.close()
f_write.close()
檔案的相關操作
1. 檔案重新命名 remove
import os
os.rename("筆記.txt", "筆記最終版.txt")
刪除檔案 remove
import os
os.remove("筆記.txt")
建立資料夾 mkdir
import os
os.mkdir("張三")
獲取當前目錄 getcwd()
import os
os.getcwd()
改變預設目錄
import os
os.chdir("../")
獲取目錄列表
import os
os.listdir("./")
刪除資料夾
import os
os.rmdir("雜文")
#coding=utf-8
# 批量在檔名前加字首
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)
另一種方法
import os
#獲取資料夾名字
folder_name = input('請輸入重新命名資料夾:')
#獲取那個檔案中所有檔案名字
file_names = os.listdir(foldder_name)
#第一種
#os.chdir(folder_name)
#對獲取的名字重新命名
#for name in file_name:
# print(name)
# os.rename(name,'[**出品]-' +name)
for name in file_names
old_file_name = './' + folder_name + "/"+name
new_file_name = './'+folder_name+ ''/''+'[**出品]'+name
os.rename(old_file_name, new_file_name)
如果3g,4g資料,根據len()位元組長度,指定每次讀取位元組,當長度為0,break
假如電腦4g,讀取資料8g,亦可以分位元組讀取。(把大檔案拆分小檔案,在整合)
## rfind()用法##
python rfind() 返回字串最後一次出現的位置(從右向左查詢),如果沒有匹配項則返回-1。
rfind()方法語法:
str.rfind(str, beg=0
end=len(string))
引數str -- 查詢的字串
beg -- 開始查詢的位置,預設為0
end -- 結束查詢位置,預設字串的
檔案操作相關
檔案拷貝ssize t sendfile int out fd,int in fd,off t offset,size t count sendfile 是作用於資料拷貝在兩個檔案描述符之間的操作函式.這個拷貝操作是核心中操作的,所以稱為 零拷貝 sendfile函式比起read和write函式高效...
檔案相關操作
file open wenjian mode r encoding utf 8 content file.read print content file.close file open wenjian mode w encoding utf 8 content file.write 楊子列 file...
檔案流的相關操作
檔案的文字內容和檔案在流中都是以位元組的形式 public class copy 複製檔案from裡的內容到檔案to裡面 param from 原始檔 param to 目標檔案 throws ioexception public void copytext string from,string t...