python文件和文件夾復(fù)制函數(shù)
本文實例為大家分享了python文件和文件夾復(fù)制函數(shù),供大家參考,具體內(nèi)容如下
文件復(fù)制函數(shù)
代碼和注釋如下:
# 文件復(fù)制函數(shù) def copy_file(file1,file2): ''' 將文件一復(fù)制到文件二 :param file1: :param file2: :return: ''' # 首先打開源文件file1和目標(biāo)文件file2 f1 = open(file1,'r') f2 = open(file2,'w') # 循環(huán)讀取寫入,實現(xiàn)文件的復(fù)制 content = f1.readline() while len(content)>0: f2.write(content) content = f1.readline() f1.close() f2.close() # 代碼測試,代碼調(diào)用 copy_file('./a.txt','./b.txt') # 使用相對路徑
文件夾復(fù)制函數(shù)
代碼和注釋如下:
# 目錄(文件夾)復(fù)制函數(shù) ''' 首先需要引入 os 模塊 ''' import os def copy_mulu(dir1,dir2): ''' 復(fù)制文件夾 :param dir1: :param dir2: :return: ''' # 獲取被復(fù)制文件夾中的所有文件信息 dlist = os.listdir(dir1) # 創(chuàng)建目標(biāo)文件夾(即為被復(fù)制之后的文件夾,文件夾不能自動生成所以要手動創(chuàng)建,文件可以自動生成) os.mkdir(dir2) # 遍歷出dir1中的所有文件并且復(fù)制 for f in dlist: # 為遍歷出的文件添加目錄路徑(一個完整的文件=目錄的路徑+文件名) file1 = os.path.join(dir1,f) # 源文件 file2 = os.path.join(dir2, f) # 目標(biāo)文件 # 判斷file1是不是文件 if os.path.isfile(file1): # 調(diào)用上面寫好的文件復(fù)制函數(shù)進行文件復(fù)制 copy_file(file1,file2) # 判斷file1是不是文件夾 if os.path.isdir(file1): # 如果是文件夾則遞歸調(diào)用(自己調(diào)用自己,繼續(xù)循環(huán)判斷) copy_mulu(file1,file2) # 代碼測試,代碼調(diào)用 copy_mulu('文件夾','復(fù)制后文件夾')
合并后的代碼如下:
# -*- coding: utf-8 -*- # @File : 文件和文件夾復(fù)制函數(shù).py # @Author : zh # @Date : 2020/2/5 # @Software: PyCharm # 文件復(fù)制函數(shù) def copy_file(file1,file2): ''' 將文件一復(fù)制到文件二 :param file1: :param file2: :return: ''' # 首先打開源文件file1和目標(biāo)文件file2 f1 = open(file1,'r') f2 = open(file2,'w') # 循環(huán)讀取寫入,實現(xiàn)文件的復(fù)制 content = f1.readline() while len(content)>0: f2.write(content) content = f1.readline() f1.close() f2.close() # 代碼測試,代碼調(diào)用 copy_file('./a.txt','./b.txt') # 使用相對路徑 # 目錄(文件夾)復(fù)制函數(shù) ''' 首先需要引入 os 模塊 ''' import os def copy_mulu(dir1,dir2): ''' 復(fù)制文件夾 :param dir1: :param dir2: :return: ''' # 獲取被復(fù)制文件夾中的所有文件信息 dlist = os.listdir(dir1) # 創(chuàng)建目標(biāo)文件夾(即為被復(fù)制之后的文件夾,文件夾不能自動生成所以要手動創(chuàng)建,文件可以自動生成) os.mkdir(dir2) # 遍歷出dir1中的所有文件并且復(fù)制 for f in dlist: # 為遍歷出的文件添加目錄路徑(一個完整的文件=目錄的路徑+文件名) file1 = os.path.join(dir1,f) # 源文件 file2 = os.path.join(dir2, f) # 目標(biāo)文件 # 判斷file1是不是文件 if os.path.isfile(file1): # 調(diào)用上面寫好的文件復(fù)制函數(shù)進行文件復(fù)制 copy_file(file1,file2) # 判斷file1是不是文件夾 if os.path.isdir(file1): # 如果是文件夾則遞歸調(diào)用(自己調(diào)用自己,繼續(xù)循環(huán)判斷) copy_mulu(file1,file2) # 代碼測試,代碼調(diào)用 copy_mulu('文件夾','復(fù)制后文件夾')
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
淺談Tensorflow由于版本問題出現(xiàn)的幾種錯誤及解決方法
今天小編就為大家分享一篇淺談Tensorflow由于版本問題出現(xiàn)的幾種錯誤及解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06Python中的字符串類型基本知識學(xué)習(xí)教程
這篇文章主要介紹了Python中的字符串類型基本知識學(xué)習(xí)教程,包括轉(zhuǎn)義符和字符串拼接以及原始字符串等基礎(chǔ)知識講解,需要的朋友可以參考下2016-02-02使用Python的Django框架實現(xiàn)事務(wù)交易管理的教程
這篇文章主要介紹了使用Python的Django框架實現(xiàn)事務(wù)交易管理的教程,針對數(shù)據(jù)庫的事務(wù)行為進行一系列操作,要的朋友可以參考下2015-04-04Python使用random.shuffle()打亂列表順序的方法
今天小編就為大家分享一篇Python使用random.shuffle()打亂列表順序的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11python fuzzywuzzy模塊模糊字符串匹配詳細用法
這篇文章主要介紹了使用Python完成公司名稱和地址的模糊匹配的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Python:二維列表下標(biāo)互換方式(矩陣轉(zhuǎn)置)
今天小編就為大家分享一篇Python:二維列表下標(biāo)互換方式(矩陣轉(zhuǎn)置),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12