【问题标题】:Python I want to create 10 files in my directory [duplicate]Python我想在我的目录中创建10个文件[重复]
【发布时间】:2021-08-07 02:11:49
【问题描述】:

我想在我的目录(myfile1.txt ... myfile10.txt) 中创建十个.txt 文件(如果它们不存在)

class test:
    def createfolder(self):
        import os
        if not os.path.exists("/home/administrator/Desktop/folder/"):
            os.makedirs("/home/administrator/Desktop/folder/")

        else: print("the folder already exist")

        for i in range(1,11):
            if not os.path.exists('/home/administrator/Desktop/folder/Fichier' + i + ".txt"):
                os.makedirs('/home/administrator/Desktop/folder/Fichier' + i + ".txt")




MonDoc=test()
MonDoc.createfolder()

TypeError: 只能将 str(不是“int”)连接到 str

【问题讨论】:

  • 问题出在哪里?
  • 有效:TypeError: can only concatenate str (not "int") to str
  • i 是一个数字,将其转换为字符串:str(i)
  • 谢谢你的作品

标签: python linux


【解决方案1】:

您不能连接字符串和整数。

使用str(i) 将您的i 转换为字符串

class test:
    def createfolder(self):
        import os
        if not os.path.exists("/home/administrator/Desktop/folder/"):
            os.makedirs("/home/administrator/Desktop/folder/")

        else: print("the folder already exist")

        for i in range(1,11):
            if not os.path.exists('/home/administrator/Desktop/folder/Fichier' + str(i) + ".txt"):
                os.makedirs('/home/administrator/Desktop/folder/Fichier' + str(i) + ".txt")




MonDoc=test()
MonDoc.createfolder()

【讨论】:

    【解决方案2】:

    使用 pathlib 和格式字符串:

    from pathlib import Path
    FOLDER = Path("/home/administrator/Desktop/folder/")
    
    def createfolder():
        FOLDER.mkdir(exit_ok=True)
        for i in range(1,11):
            (FOLDER / f"Fichier{i}.txt").mkdir(exit_ok=True)
    
    createfolder()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-22
      • 2016-08-29
      • 2018-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多