【问题标题】:Putting the name of new created folder in the path of csv file将新创建的文件夹的名称放在 csv 文件的路径中
【发布时间】:2020-04-20 17:57:29
【问题描述】:

我正在尝试在新创建的文件夹中创建新的 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)

【问题讨论】:

  • 看起来你的代码就是这样做的。你有什么错误吗?
  • 是的,我有这个错误 FileExistsError: [WinError 183] 当文件已经存在时无法创建文件:'C:\\Users\\lap\\Desktop\\parfolder\\new1'跨度>
  • 好的,我添加了答案。

标签: python-3.x file mkdir


【解决方案1】:

根据您的错误,您可以尝试将 os.mkdir(path) 调用包装起来,但构造除外:

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:你的意思是使用i 而不是ii?因为你的代码中没有定义ii
  • 我在侧函数中使用了 ii,你是最棒的 :) 谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-16
  • 2021-08-19
  • 2022-07-08
  • 1970-01-01
  • 1970-01-01
  • 2020-09-15
相关资源
最近更新 更多