1. 程式人生 > 程式設計 >python檔案和資料夾複製函式

python檔案和資料夾複製函式

本文例項為大家分享了python檔案和資料夾複製函式,供大家參考,具體內容如下

檔案複製函式

程式碼和註釋如下:

# 檔案複製函式
def copy_file(file1,file2):
  '''
  將檔案一複製到檔案二
  :param file1:
  :param file2:
  :return:
  '''
  # 首先開啟原始檔file1和目標檔案file2
  f1 = open(file1,'r')
  f2 = open(file2,'w')
  # 迴圈讀取寫入,實現檔案的複製
  content = f1.readline()
  while len(content)>0:
    f2.write(content)
    content = f1.readline()
  f1.close()
  f2.close()
# 程式碼測試,程式碼呼叫
copy_file('./a.txt','./b.txt')    # 使用相對路徑

資料夾複製函式

程式碼和註釋如下:

# 目錄(資料夾)複製函式
'''
首先需要引入 os 模組
'''
import os
def copy_mulu(dir1,dir2):
  '''
  複製資料夾
  :param dir1:
  :param dir2:
  :return:
  '''
  # 獲取被複制資料夾中的所有檔案資訊
  dlist = os.listdir(dir1)
  # 建立目標資料夾(即為被複制之後的資料夾,資料夾不能自動生成所以要手動建立,檔案可以自動生成)
  os.mkdir(dir2)
  # 遍歷出dir1中的所有檔案並且複製
  for f in dlist:
    # 為遍歷出的檔案新增目錄路徑(一個完整的檔案=目錄的路徑+檔名)
    file1 = os.path.join(dir1,f)   # 原始檔
    file2 = os.path.join(dir2,f)   # 目標檔案
    # 判斷file1是不是檔案
    if os.path.isfile(file1):
      # 呼叫上面寫好的檔案複製函式進行檔案複製
      copy_file(file1,file2)
    # 判斷file1是不是資料夾
    if os.path.isdir(file1):
      # 如果是資料夾則遞迴呼叫(自己呼叫自己,繼續迴圈判斷)
      copy_mulu(file1,file2)

# 程式碼測試,程式碼呼叫
copy_mulu('資料夾','複製後文件夾')

合併後的程式碼如下:

# -*- coding: utf-8 -*-
# @File  : 檔案和資料夾複製函式.py
# @Author : zh
# @Date  : 2020/2/5
# @Software: PyCharm
# 檔案複製函式
def copy_file(file1,'./b.txt')    # 使用相對路徑

# 目錄(資料夾)複製函式
'''
首先需要引入 os 模組
'''
import os
def copy_mulu(dir1,'複製後文件夾')

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。