【发布时间】:2021-05-02 19:59:51
【问题描述】:
您好,我正在尝试创建一个小工具,用于在根目录中创建子目录
根目录(python)和子目录(DS、WEB、Flask、Learn)之类的东西
一开始我是静态完成的 这是代码
import os
web = "Web"
Ds = "Data-structures"
Learn = "Learn"
tools = "Tools"
list1 = []
var = int(input("Enter number of Dir:- "))
for x in range(0, var):
Lang = input("Enter Lang:- ")
list.append(Lang)
for i in list1:
os.system(
f'mkdir {i} && cd {i} && mkdir {web} && mkdir {Ds} && mkdir {Learn} && mkdir {tools}')
然后我决定像以前一样动态地使用两个列表,但事情进展不顺利这是代码
import os
A = int(input("Enter number of dirs to be in A Specific languge(Ex:1 or 2):- "))
list1 = []
for x in range(0, A):
B = input("Enter the Dir name(Ex:- DS, Web..etc):- ")
list.append(B)
print(list)
C = int(input("Enter number of languages to be In the Dir(Ex:1 or 2):- "))
list2 = []
for x in range(0, C):
D = input("Enter languges Name(Ex:- python,php,Golang):- ")
list2.append(D)
for i, j in zip(list2, list1):
os.system(f'mkdir {i} && cd {i} && mkdir {j} && mkdir {j}')
#tried all combination that I know
#for i in range(0,lis1):
# for j in list2:
# os.system(f'mkdir {list2} && cd {list2} && {os.mkdir(list1[i])}')
所以我通过使用嵌套的 for 循环或 while 循环来尝试它,但我没有得到我所做的事情的答案
在第二个代码中,如果我给它抛出错误,我将无法给for k in range(0, A):
A subdirectory or file py already exists. 很明显得到错误,就像我正在使用 for 循环一次又一次地重新创建相同的内容
我想要的是创建 Root:-Python child's:-Web, DS..etc
如果您知道其他方式,您不想使用相同的代码请执行 让我知道
请任何人帮助我
【问题讨论】:
-
不要使用
os.system使用os.mkdir和`os.makedirs' -
plus zip 不会combine 目录,双循环会更好
-
我确实使用过它,但问题是一旦迭代完成,我想在 Root Dir 中使用它,它会再次检查相同的东西,我尝试了迄今为止我所知道的所有可能性,最后的希望是得到答案你们
-
不要使用
list作为变量名:这是一个内置函数!
标签: python list directory nested-loops