小编kez*_*per的帖子

在 Windows 上使用 urwid 时出现“NameError:名称 'fcntl' 未定义”

因此,我刚刚安装了 Urwid,并作为测试尝试运行相当于基本打印命令的 Urwid,如 Urwid 网站教程中的示例所示。我收到一条错误消息。

我尝试运行另一个示例并收到类似的错误消息。代码如下所示:

import urwid

txt = urwid.Text(u"Hello World")
fill = urwid.Filler(txt, 'top')
loop = urwid.MainLoop(fill)
loop.run()
Run Code Online (Sandbox Code Playgroud)

它应该在屏幕左上角打印“Hello World”,然后运行直到指示退出。相反,我收到此错误消息:

Traceback (most recent call last):
  File "C:\Users\Rory Kranz\AppData\Local\atom\app-1.34.0\testingg", line 5, in <module>
    loop = urwid.MainLoop(fill)
  File "C:\Users\Rory Kranz\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urwid\main_loop.py", line 114, in __init__
    screen = raw_display.Screen()
  File "C:\Users\Rory Kranz\AppData\Local\Programs\Python\Python37-32\lib\site-packages\urwid\raw_display.py", line 92, in __init__
    fcntl.fcntl(self._resize_pipe_rd, fcntl.F_SETFL, os.O_NONBLOCK)
NameError: name 'fcntl' is not defined
Run Code Online (Sandbox Code Playgroud)

安装是否出了问题,或者我还需要安装其他东西才能让 Urwid 正常工作?

python urwid

5
推荐指数
1
解决办法
6310
查看次数

标签 统计

python ×1

urwid ×1