为什么curses.initscr()在Windows 11命令提示符下不起作用?

问题描述 投票:0回答:1

我正在尝试使用 windows.curses 在 Python 中编写一些程序,但是当我运行该程序时没有任何反应。代码是:

import curses
from curses import wrapper

def main(scr):
    scr.initscr()
    scr.clear()
    scr.addstr(20, 20, "Hello World!")
    scr.refresh()
    scr.getch()

wrapper(main)

当我打开 CMD 窗口并运行“python3curses_test.py”时,没有任何反应,也没有报告错误。提示只是跳到新行。

有人已经遇到这个问题了吗?我正在使用 Windows 11 Professional、Python 3.12.1 和 windows.curses 2.3.2。

在 Linux 中,相同的代码可以完美运行。

python windows terminal curses
1个回答
0
投票

不知道在 Windows 上,在 IO 上工作,尝试一下:

import curses

import time

scr = curses.initscr()

def main(scr):
    
    
    scr.clear()
    
    scr.addstr(20, 20, "Hello World!")
    
    scr.refresh()
    
    time.sleep(5)
    
    scr.clear()
    
    scr.refresh()
    
    time.sleep(5)
    
    scr.addstr(20, 20, "Hello World! 2 ")
    
    print('print(scr) : ' , scr)
    
    scr.refresh()
    
main(scr)

并检查其行为是否不同。

© www.soinside.com 2019 - 2024. All rights reserved.