python文件和文件夾復(fù)制函數(shù)
本文實(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)讀取寫入,實(shí)現(xiàn)文件的復(fù)制
content = f1.readline()
while len(content)>0:
f2.write(content)
content = f1.readline()
f1.close()
f2.close()
# 代碼測(cè)試,代碼調(diào)用
copy_file('./a.txt','./b.txt') # 使用相對(duì)路徑
文件夾復(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ù)制之后的文件夾,文件夾不能自動(dòng)生成所以要手動(dòng)創(chuàng)建,文件可以自動(dòng)生成)
os.mkdir(dir2)
# 遍歷出dir1中的所有文件并且復(fù)制
for f in dlist:
# 為遍歷出的文件添加目錄路徑(一個(gè)完整的文件=目錄的路徑+文件名)
file1 = os.path.join(dir1,f) # 源文件
file2 = os.path.join(dir2, f) # 目標(biāo)文件
# 判斷file1是不是文件
if os.path.isfile(file1):
# 調(diào)用上面寫好的文件復(fù)制函數(shù)進(jìn)行文件復(fù)制
copy_file(file1,file2)
# 判斷file1是不是文件夾
if os.path.isdir(file1):
# 如果是文件夾則遞歸調(diào)用(自己調(diào)用自己,繼續(xù)循環(huán)判斷)
copy_mulu(file1,file2)
# 代碼測(cè)試,代碼調(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)讀取寫入,實(shí)現(xiàn)文件的復(fù)制
content = f1.readline()
while len(content)>0:
f2.write(content)
content = f1.readline()
f1.close()
f2.close()
# 代碼測(cè)試,代碼調(diào)用
copy_file('./a.txt','./b.txt') # 使用相對(duì)路徑
# 目錄(文件夾)復(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ù)制之后的文件夾,文件夾不能自動(dòng)生成所以要手動(dòng)創(chuàng)建,文件可以自動(dòng)生成)
os.mkdir(dir2)
# 遍歷出dir1中的所有文件并且復(fù)制
for f in dlist:
# 為遍歷出的文件添加目錄路徑(一個(gè)完整的文件=目錄的路徑+文件名)
file1 = os.path.join(dir1,f) # 源文件
file2 = os.path.join(dir2, f) # 目標(biāo)文件
# 判斷file1是不是文件
if os.path.isfile(file1):
# 調(diào)用上面寫好的文件復(fù)制函數(shù)進(jìn)行文件復(fù)制
copy_file(file1,file2)
# 判斷file1是不是文件夾
if os.path.isdir(file1):
# 如果是文件夾則遞歸調(diào)用(自己調(diào)用自己,繼續(xù)循環(huán)判斷)
copy_mulu(file1,file2)
# 代碼測(cè)試,代碼調(diào)用
copy_mulu('文件夾','復(fù)制后文件夾')
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python Pandas describe()函數(shù)的使用詳解
pandas庫(kù)中的describe()函數(shù)為我們提供了這樣的功能,它可以快速生成數(shù)據(jù)集的描述性統(tǒng)計(jì)信息,這篇文章主要介紹了Python Pandas describe()函數(shù)的使用介紹,需要的朋友可以參考下2024-05-05
PyCharm MySQL可視化Database配置過程圖解
這篇文章主要介紹了PyCharm MySQL可視化Database配置過程圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
python中子類繼承父類的__init__方法實(shí)例
這篇文章主要給大家詳細(xì)介紹了python中子類如何繼承父類的__init__方法,文中給出了詳細(xì)的示例代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定參考價(jià)值,有需要的朋友們下面來跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。2016-12-12
使用Python實(shí)現(xiàn)將PDF轉(zhuǎn)為PDF/A和PDF/X
PDF/A和PDF/X是兩種有特定用途的PDF格式,本文主要介紹了如何使用Python將PDF轉(zhuǎn)換為PDF/A和PDF/X,以及如何將PDF/A格式轉(zhuǎn)換回標(biāo)準(zhǔn)的PDF格式,需要的可以參考下2024-04-04
Python?ctypes庫(kù)底層交互秘籍實(shí)例探究
ctypes是Python標(biāo)準(zhǔn)庫(kù)中的外部函數(shù)庫(kù),允許Python調(diào)用動(dòng)態(tài)鏈接庫(kù)中的函數(shù),它提供了與C兼容的數(shù)據(jù)類型和允許Python調(diào)用共享庫(kù)中的函數(shù),對(duì)系統(tǒng)級(jí)編程和與硬件交互非常有用2024-01-01
Python3導(dǎo)入CSV文件的實(shí)例(跟Python2有些許的不同)
今天小編就為大家分享一篇Python3導(dǎo)入CSV文件的實(shí)例(跟Python2有些許的不同),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06

