檔案相關的操作

2021-08-17 06:58:06 字數 3212 閱讀 5372

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...