Python创建文件夹树

Python创建文件夹树,python,directory,Python,Directory,对不起,这个问题很简单,但我不知道如何解决我的简单问题。我想创建一个文件夹树。我正在选择主文件夹并创建第一级子文件夹。但是我不知道如何创建嵌套在第一层中的第二层文件夹 例如: 主文件夹(选定)包含文件夹A、B和C 文件夹A应包含文件夹A1 文件夹C应该包含文件夹C1 import pathlib from tkinter import Tk from tkinter.filedialog import askdirectory folder = ["A", "B

对不起,这个问题很简单,但我不知道如何解决我的简单问题。我想创建一个文件夹树。我正在选择主文件夹并创建第一级子文件夹。但是我不知道如何创建嵌套在第一层中的第二层文件夹

例如: 主文件夹(选定)包含文件夹A、B和C 文件夹A应包含文件夹A1 文件夹C应该包含文件夹C1

import pathlib

from tkinter import Tk
from tkinter.filedialog import askdirectory

folder = ["A", "B", "C"]

root = Tk()
root.withdraw()
root.update()

c_path = askdirectory(title='Select Main Folder')
path = c_path + "/"

root.destroy()

for i in folder: 
    pathlib.Path(path + i).mkdir(parents=True, exist_ok=True) 

print("done")

您可以定义第二个列表(
子文件夹
),提供您的子目录名称:

import pathlib

from tkinter import Tk
from tkinter.filedialog import askdirectory

folder = ["A", "B", "C"]
subfolders = ["1", "2", "3"]

root = Tk()
root.withdraw()
root.update()

c_path = askdirectory(title='Select Main Folder')
path = c_path + "/"
root.destroy()

for f in folder:
    for s in subfolders:
        subDir = f+s
        pth = pathlib.Path(path) / f / subDir
        pth.mkdir(parents=True, exist_ok=True)
        print(pth, pth.exists())

print("done")
输出:


您可以定义第二个列表(
子文件夹
),提供您的子目录名称:

import pathlib

from tkinter import Tk
from tkinter.filedialog import askdirectory

folder = ["A", "B", "C"]
subfolders = ["1", "2", "3"]

root = Tk()
root.withdraw()
root.update()

c_path = askdirectory(title='Select Main Folder')
path = c_path + "/"
root.destroy()

for f in folder:
    for s in subfolders:
        subDir = f+s
        pth = pathlib.Path(path) / f / subDir
        pth.mkdir(parents=True, exist_ok=True)
        print(pth, pth.exists())

print("done")
输出:


谢谢大家!我只是从中得到灵感来完成练习。我想这不是很好,但仍然有效

import pathlib
import os
from tkinter import Tk
from tkinter.filedialog import askdirectory

folder = ["A", "B", "C", "D", "E", "F"]

subfolder_A = ["/a1"]
subfolder_B =  ["/b1", "/b2", "/b3"]
subfolder_F = ["/f1", "/f2"]

root = Tk()
root.update()

c_path = askdirectory(title='Select Main Folder') # shows dialog box and return the path
path = c_path + "/"

root.destroy()

for i in folder: 
    pathlib.Path(path + i).mkdir(parents=True, exist_ok=True) 

for f in subfolder_A:
    pathlib.Path(path + folder[0] + f).mkdir(parents=True, exist_ok=True)
        
for g in subfolder_B:
    pathlib.Path(path + folder[3] + g).mkdir(parents=True, exist_ok=True)
    
for h in subfolder_F:
    pathlib.Path(path + folder[5] + h).mkdir(parents=True, exist_ok=True)
        
os.startfile(path)

print("folder tree created")

谢谢大家!我只是从中得到灵感来完成练习。我想这不是很好,但仍然有效

import pathlib
import os
from tkinter import Tk
from tkinter.filedialog import askdirectory

folder = ["A", "B", "C", "D", "E", "F"]

subfolder_A = ["/a1"]
subfolder_B =  ["/b1", "/b2", "/b3"]
subfolder_F = ["/f1", "/f2"]

root = Tk()
root.update()

c_path = askdirectory(title='Select Main Folder') # shows dialog box and return the path
path = c_path + "/"

root.destroy()

for i in folder: 
    pathlib.Path(path + i).mkdir(parents=True, exist_ok=True) 

for f in subfolder_A:
    pathlib.Path(path + folder[0] + f).mkdir(parents=True, exist_ok=True)
        
for g in subfolder_B:
    pathlib.Path(path + folder[3] + g).mkdir(parents=True, exist_ok=True)
    
for h in subfolder_F:
    pathlib.Path(path + folder[5] + h).mkdir(parents=True, exist_ok=True)
        
os.startfile(path)

print("folder tree created")

您得到的输出是什么?如果您将所有文件夹都放在一个平面列表中,这很容易:
[“a”、“a/A1”、“B”、“C”、“C/C1”]
您得到的输出是什么?如果您将所有文件夹放在一个平面列表中,这很容易:
[“a”、“a/A1”、“B”、“C”、“C/C1”]