python 辦公自動化 之一目錄及檔案管理

2021-10-06 20:05:48 字數 2737 閱讀 2490

import os

os.getcwd()

輸出目錄下所有檔案及資料夾

python路徑自動連線:os.path.join('/users','liuming')

列出當前目錄下所有檔案和資料夾:os.listdir()

判斷是不是資料夾:os.path.isdir()

os.scandir()

for each in os.scandir():

print(each.name,each.is_dir())

遍歷目錄:一層一層一層的找

os.walk()

import os

for dirpath,dirnames,files in os.walk('./'):   #資料夾路徑、子資料夾列表、檔案列表

print(f'資料夾:')

print(files) 

搜尋匹配檔名稱:

.startswith() .endswith()   #字串函式

import glob

glob.glob('*.py')

*:任意

?:乙個

[seq]:seq中任一字元

[!seq]:不在seq中任一字元

把藏在資料夾很多層的檔案都找出來:

glob.glob('**/*.txt',recursive=true)

**:任意層檔案或資料夾

recursive:遞迴

import fnmatch

fnmatch.fnmatch('lesson1.py','le*1.py')

fnmatch.fnmatch('lesson1.py','le*[0-9].py')

檢視檔案資訊:

os.scandir()

for file in os.scandir():

file.state()

參考time、datetime模組

檔案及資料夾常用操作

os.mkdir(path):若存在報錯

op.path.exists(path):判斷是否存在

多層資料夾一起建立:os.mkdirs('  /  /  ')

複製資料夾:

shutil模組:

shutil.copy(s,d) #  d:可以是資料夾或檔名

複製資料夾:shutil.copytree(資料夾,新資料夾)

shutil.move()   #移動

os.rename()  #重新命名檔案或資料夾

os.remove(檔案)#刪除檔案

shutil.retree(資料夾)#刪除資料夾

處理壓縮包:

import zipfile

讀取乙個壓縮包內檔名:

with zipfile.zipfile('壓縮包.zip','r') as zipobj:

print(zipobj.namelist())

如果有中文檔案,可能會亂碼:

with zipfile.zipfile('壓縮包.zip','r') as zipobj:

for filename in zipobj.namelist():

print(filename.encode('cp437').decode('gbk'))

讀取壓縮包內檔案資訊:

zipobj.getinfo()

with zipfile.zipfile('壓縮包.zip','r') as zipobj:

for filename in zipobj.namelist():

info=zipobj.getinfo(filename)

new_filename=filename.decode('cp437').encode('gbk')

print(new_filename,info.file_size,info.compress_size)

解壓壓縮包:

zipobj.extract(要解壓的檔名,解壓的位置)

with zipfile.zipfile('壓縮包.zip','r') as zipobj:

zipobj.extract('file1.txt')

中文亂碼解決:

將所有檔案提取出來:

zipobj.extractall(path='')

將有密碼的壓縮包解壓:zipobj.extractall(path='',pwd=b'密碼')

建立壓縮包:

filelist=[ .....pathlist...   ]

with zipfile.zipfile('   ','w') as zipobj:

for file in filelist:

zipobj.write(file)

向已有壓縮包追加檔案:

with zipfile.zipfile('壓縮包','a') as zipobj:

python辦公自動化1 7 1 8 1 9

from tempfile import temporaryfile f temporaryfile w 表示寫入及讀取檔案 f.write hello 尹老師!f.seek 0 表示回到檔案的開頭位置 data f.readlines print data f.close 臨時資料夾 from t...

OA 辦公自動化

通常,oa 就是辦公自動化,英文office automation的縮寫。通過流程或特定環節與日常事務聯絡在一起,使公文在流轉 審批 發布等方面提高效率,實現辦公管理規範化和資訊規範化,降低企業執行成本的一套系統的統稱。多年來,oa尚無乙個確切的定義,人們對oa的看法和理解各有不同。筆者認為 oa本...

OA(辦公自動化)

2011 08 29 16 01 近期一直在研究oa,發現現在國產的oa軟體在實際應用中存在很多問題,並不像諸多廠家宣傳的那樣完美無瑕,甚至根本沒有體現出oa的真正辦公自動化的真諦。現行oa狀況大體是這樣的 1 企事業單位很多需要辦公自動化,但是又找不到乙個合適的oa產品,在選型上忐忑不安,猶豫不決...