astroworld Ответов: 1

Как создать функцию, которая позволит мне записывать числа от 1 до 10 по отдельности в csv-файл при нажатии кнопки в tkinter?


Я пытаюсь напечатать числа от одного до десяти в csv-файле, когда нажимаю кнопку на tkinter. Так , например, я нажимаю на него один раз (или в первый раз), и он напишет "1", я нажимаю на него второй раз, и он пишет "2" на новой строке, а затем делает то же самое для остальных чисел, пока не достигнет числа 10.

Что я уже пробовал:

from tkinter import *
root = Tk()
root.geometry("300x300")
root.title("numbers from 1 to 10")
root.grid()

def number():
    value = (1,10)
    print(value)


file = open("order_log_for_students.txt","a")# write mode
file.write(str(number))

button_1 = Button(root, text="test",command=number)
button_1.pack()
root.mainloop()

1 Ответов

Рейтинг:
1

Richard MacCutchan

Ваша числовая функция не возвращает никакого значения, поэтому она никогда не будет печатать ничего, что вы хотите. Вам также нужно начать со счетчика, который увеличивается каждый раз, когда вы вызываете свою функцию. Что-то вроде:

def number():
    nonlocal counter # use the same value for each call
    counter += 1;
    return counter;

counter = 0
file.write(str(number()))