0

I want to create ten .txt files in my directory (myfile1.txt ... myfile10.txt) if they don't exist

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: can only concatenate str (not "int") to str

0stone0
  • 21,605
  • 3
  • 29
  • 49

2 Answers2

0

Use pathlib and format-strings:

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()
Daniel
  • 40,885
  • 4
  • 53
  • 79
0

You cannot concatenate a string and an interger.

Convert your i into a string using str(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()
Joe Thor
  • 1,020
  • 1
  • 10
  • 18