Создание файла со сгенерированным именем
Есть функция отработки нажатия на кнопку
def add_module():
a=1
module_name="cfg/"+combo_select_module.get()+"_"+str(a)+".txt"
path_module_name=os.path.isfile(module_name)
module_cfg = open(module_name, "w")
- module_name - задает путь и имя файла
- path_module_name - проверяет есть ли такой файл. возвращает логическое значение (
TrueилиFalse) - module_cfg - создает файл
- combo_select_module.get() - получаем значение из выпадающего списка
Это все работает нормально, без ошибок.
Мне нужно чтобы при нажатии на кнопку создался файл , например, файл_1.txt. Если нажать еще раз то создался бы файл файл_2.txt , при условии что отсутствует файл_1.txt Если нажать еще раз то создался бы файл файл_3.txt при условии что нет файлов файл_1.txt и файл_2.txt и так далее.
Пробовал через цикл while: обернулось все это тем что у меня за секунду создалось 12 с лишним тысяч файлов.
Ответы (1 шт):
Вот полный код:
from tkinter import *
s=int(open('sh.txt').read())
def add_module():
global s
test=open('файл_'+str(s)+'.txt', 'w')
test.close()
s+=1
open('sh.txt', 'w').write(str(s))
w=Tk()
Button(w, text='создать файл', command=add_module).pack()
Теперь даже при повторном запуске программы будут создаваться файлы, которых нет в папке (для этого существует файл sh.txt. Сначала его нужно создать в папке, где хранится программа, а затем в него нужно вписать значение 1. Далее его не нужно изменять ни в коем случае!)
