Я создал простой графический интерфейс с проклятиями.Однако, когда меню проклятий завершено, функция печати ничего не печатает на экране, пока не выйдет основная программа.
В следующем примере, когда запущен calc.py, текст «Список каталогов в порядке» выводится на экран после запуска foo (calcDirs).Если я закомментирую строку folderSelection.menu(dirs)
, текст выводится на экран, как обычно.Есть идеи?Я использую python 2.5
calc.py:
import folderSelection
[...]
calcDirs=folderSelection.menu(dirs)
print "Directory list ok"
foo(calcDirs)
folderSelection.py:
import curses
def menu(folders):
global scr
scr = curses.initscr()
curses.noecho() # Do not echo keypresses
curses.cbreak() # No enter required
scr.keypad(1) # Support keypad
curses.curs_set(0) # Do not show the cursor
# Do some calculations
[...]
exitCurses()
return calcDirs
def exitCurses():
global scr
curses.nocbreak()
curses.curs_set(1)
scr.keypad(0)
curses.echo()
curses.endwin()
Редактировать: Кажется, что текстобязательно отложено до завершения программы.Это может быть отложено на 30-40 секунд.