python文件和目录操作

怎么d对“C:\source”课前预置目录做如下操作:
请写一个程序,在当前工作目录下,创建如下的目录层级结构backup/new/,并把C:盘根目录下的source目录内容,拷贝到 backup/new/source 目录里面去。

望采纳。在 Python 中,可以使用 os 模块来操作文件和目录。

  • 首先,可以使用 os.makedirs 函数来创建目录层级结构,例如:
import os

#创建目录层级结构 "backup/new/"
os.makedirs("backup/new/")

然后,可以使用 shutil 模块的 copytree 函数来拷贝文件夹,例如:

import shutil

#拷贝文件夹 "C:\source""backup/new/source"
shutil.copytree("C:\source", "backup/new/source")

在网上搜索了下复制文件夹的资料,找到一个可以实现文件夹复制的代码,测试代码如下:

参考链接:
用Python复制指定文件夹内所有文件或复制整个文件夹结构至指定文件夹-蒲公英云


#  https://www.dandelioncloud.cn/article/details/1568936437724966914
import os
def copy_dir(src_path, target_path):
    if os.path.isdir(src_path) and os.path.isdir(target_path):
        #print("开始复制")
        filelist_src = os.listdir(src_path)                            
        for file in filelist_src:
            path = os.path.join(os.path.abspath(src_path), file)    
            if os.path.isdir(path):
                path1 = os.path.join(os.path.abspath(target_path), file)    
                if not os.path.exists(path1):                        
                    os.mkdir(path1)
                copy_dir(path,path1)            
            else:                                
                with open(path, 'rb') as read_stream:
                    contents = read_stream.read()
                    path1 = os.path.join(target_path, file)
                    with open(path1, 'wb') as write_stream:
                        write_stream.write(contents)
                        
copy_dir("C:\\source","F:\\backup\\new")

img