Вы можете использовать опцию tabs
виджета Text
для управления положением табуляции.У вас есть варианты для определения ширины (скопировано из здесь )
<none>
The number specifies a distance in pixels.
c
The number specifies a distance in centimeters on the screen.
i
The number specifies a distance in inches on the screen.
m
The number specifies a distance in millimeters on the screen.
p
The number specifies a distance in printer's points (1/72 inch) on the screen.
Как вы можете видеть, ни один из них не содержит количества символов / пробелов.Вы можете просто выбрать количество пикселей, которое вам нравится, но если вы хотите, чтобы оно было как можно ближе к точно четырем пробелам, tkinter имеет способ «измерить» ширину конкретной строки, как показано в thisответить .Используя это, вы можете сделать:
from tkinter import *
import tkinter.font as tkfont
root = Tk()
text = Text(root)
text.pack()
font = tkfont.Font(font=text['font'])
tab = font.measure(' ')
text.config(tabs=tab)
root.mainloop()