У меня есть программа, которая работает в терминале и ждет нажатия клавиши. Запускаю фоновый поток по инициализации. Я хочу сделать print
из фонового потока, но вывод с отступом. Почему выход с отступом? Можно ли сделать так, чтобы он не был отступом?
import sys, termios, tty, time, threading
def getch():
# Taken from /484486/python-chitaet-odin-simvol-ot-polzovatelya
fd = sys.stdin.fileno()
old_settings = termios.tcgetattr(fd)
try:
tty.setraw(sys.stdin.fileno())
ch = sys.stdin.read(1)
finally:
termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
return ch
def do_stuff():
for i in range(5):
time.sleep(1)
print 'test {}'.format(i)
t = threading.Thread(target=do_stuff, args=[], kwargs={})
t.start()
print 'press any key'
print getch()
print 'done'
Выход:
press any key
test 0
test 1
test 2
test 3
test 4
x
done