Вывод переменной в текст Label Tkinter

lbl = Label(exerc, text=("Занятие № ", num))

Пытаюсь таким способом вывести переменную но тогда текст выводится вот так: {текст} переменная. Подскажите способ вывода получше.


Ответы (1 шт):

Автор решения: MarianD

Вместо

lbl = Label(exerc, text=("Занятие № ", num)) 

примените

lbl = Label(exerc, text=f"Занятие № {num}") 

(для Питона 3.6+, иначе text="Занятие № {}".format(num)).


Объяснение:

Невозможно дублировать поведение функции print(), в которой возможно задавать множество параметров любого типа.

Конструктор Label в параметре text= требует точно одну строку.

Значит, когда вы хотите вместе задать например текст и число, вы должны эти 2 данные предложить в виде одной строки.

f-строка f"Занятие № {num}" делает точно это - соединяет текст и чило в одну строку.

→ Ссылка