linux以及mac windows都自帶有複製資料夾功能,但是最近感覺自帶的複製效率真的很低,寫了乙個簡易的多執行緒複製器,**如下,執行條件是在linux,利用終端瞬間複製了170多個py檔案,感覺效率很快,大檔案等還沒測試,不過相信我,windows自帶的複製貼上遇到了很多小檔案且數量居多的時候,速度龜速,好了下面是**,大檔案等可以自己測試。
import自己測試了一下,結果如下multiprocessing
import
osdef
copy(file_name,copy_folder,copying_folder):
for s in
file_name:
with open(copy_folder+s,'rb'
) as f:
copy_data =f.read()
x = open(copying_folder+s,'wb'
) x.write(copy_data)
x.close()
defmain():
#因為需要拷貝的資料夾內容是不固定的,需要使用到程序池
processes = multiprocessing.pool(10)
copy_folder = input("
請輸入你要拷貝的資料夾的絕對路徑")
#獲取到了使用者需要拷貝的資料夾路徑,可以利用os模組的listdir()返回所有檔案列表
file_name =os.listdir(copy_folder)
copying_folder = input("
請輸入你要拷貝到的資料夾絕對路徑")
#已經獲取到需要待拷貝的資料夾
#需要判斷該資料夾是否存在
choice =os.path.exists(copying_folder)
if choice ==true:
print("
你輸入的資料夾已經存在,是否繼續")
s = input("
\t繼續輸入yes,退出輸入exit:")
if s == '
yes'
:
else
: exit(0)
else
: os.mkdir(copying_folder)
processes.close()
processes.join()
if__name__ == '
__main__':
main()
1 執行時的**(注意:此為linux(mac)下的路徑方式,windows使用輸入路徑均為\\)
2 test 資料夾內容展示
3 執行結束test1資料夾
4 test1 裡的詳細內容
利用python多執行緒更新資料
需求背景 從一張大表中取記錄更新另一張大表的的字段,如採用oracle直接update 好久都沒有更新完成的。處理 採用python,主線程游標查詢原始表,開啟執行緒從游標中讀取記錄,批量更新目標大表的字段。usr bin python coding utf 8 import cx oracle a...
python多執行緒 python多執行緒
通常來說,多程序適用於計算密集型任務,多執行緒適用於io密集型任務,如網路爬蟲。關於多執行緒和多程序的區別,請參考這個 下面將使用python標準庫的multiprocessing包來嘗試多執行緒的操作,在python中呼叫多執行緒要使用multiprocessing.dummy,如果是多程序則去掉...
python多執行緒詳解 Python多執行緒詳解
前言 由於最近的工作中一直需要用到python去處理資料,而在面對大量的資料時,python多執行緒的優勢就展現出來了。因而藉此機會,盡可能詳盡地來闡述python多執行緒。但對於其更底層的實現機制,在此不做深究,僅是對於之前的一知半解做個補充,也希望初學者能夠通過這篇文章,即便是照葫蘆畫瓢,也能夠...