Я пытаюсь изучить проклятия для Python в Windows XP. Я могу заставить команду window.getkey работать правильно, но команда window.getstr не только терпит неудачу, но и программа выйдет. Здесь приведены примеры строки коды:Curses window.getstr()
x = window.getkey() # this works
y = window.getstr() # this fails
Очевидно, чтобы получить первую строку на работу я правильно импортированные проклятия и сделал команду stdscr = curses.initscr()
. Мое окно определено и работает. Я попытался разместить координаты окна в getstr parens, и я использовал window.move. Ничего не работает.
Любые идеи, почему getstr не работает?
Вот больше информации после первого предложения:
Во-первых, предложение запустить программу в окне командной строки, а не с рабочего стола является хорошим, потому что окно действительно исчезает.
Вот цельность программы:
# program = testcurses
import curses
stdscr = curses.initscr()
window = stdscr.subwin(23,79,0,0)
window.box()
window.refresh()
window.addstr(2,10, "This is my line of text")
window.addstr(4,20,"What happened? ")
window.refresh()
mykey = window.getkey(5,20)
mystr = window.getstr (6,20)
#window.addstr (7,1, "Key data should be here: ")
#window.addstr (7,33, mykey)
window.addstr (8,1, "Str data should be here: ")
window.addstr (8,33,mystr)
window.refresh()
Я заметил строки, относящиеся к отображению данных ключа, так что хорошо работает.
Вот соответствующая часть сообщения TraceBack:
window.addstr (8,33, mystr) TypeError: должна быть улица, а не байт.
Том
Любая трассировка? Если окно исчезнет, попробуйте вручную открыть командную строку, а затем вызовите команду python, чтобы закрыть окно – mhlester