将新创建文件夹的名称放入CSV文件路径中

3

我想在新创建的文件夹中创建新的CSV文件,我想知道如何将新创建的文件夹名称放入CSV文件路径中。

   import os  
   def creat(i,ii):   
   # Directory  
   directory = "NEW"+str(i) 
   # Parent Directory path  
   parent_dir = 'C:\\Users\\lap\\Desktop\\parfolder\\'
   path = os.path.join(parent_dir, directory )   
   os.mkdir(path)  
   print("Directory '% s' created" % directory)  
   with open('C:\\Users\\lap\\Desktop\\parfolder\\%s\\MM%s.csv' %directory 
             %ii , 'w') as file:
        for i in range(1,10):
            file.write("{}\n".format(i))
for i in range(1,4):
   creat(i,i)

看起来你的代码已经实现了这个功能。你有遇到任何错误吗? - mechanical_meat
是的,我遇到了这个错误:FileExistsError: [WinError 183] Cannot create a file when that file already exists: 'C:\Users\lap\Desktop\parfolder\new1'。 - oleva
好的,我添加了一个答案。 - mechanical_meat
1个回答

2
根据您的错误,您可以将os.mkdir(path)调用包装在try、except结构中:
try:
    os.mkdir(path)
except FileExistsError:
    pass

编辑:
现在您已更改代码,因此您也需要更改此内容:

with open('C:\\Users\\lap\\Desktop\\parfolder\\%s\\MM%s.csv' % (directory,  
          i), 'w') as file:

请问您能否看到我的更新代码?现在我遇到了这个错误:TypeError: not enough arguments for format string。 - oleva
@oleva:你是不是想用 i 而不是 ii?因为在你的代码中 ii 没有被定义。 - mechanical_meat
我在函数内使用了ii,你是最棒的 :) 谢谢 - oleva

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接