加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python kbhit()问题

发布时间:2020-12-20 11:29:41 所属栏目:Python 来源:网络整理
导读:我正在尝试编写一个非常简单的程序,它将等待x秒,然后检查它是否已经按下了一个键,这取决于这个结果将进入代码中的另一个循环.我有这个代码: import msvcrtimport timeimport systime.sleep(1)if msvcrt.kbhit(): sys.stdout.write('y')else: sys.stdout.wri
我正在尝试编写一个非常简单的程序,它将等待x秒,然后检查它是否已经按下了一个键,这取决于这个结果将进入代码中的另一个循环.我有这个代码:

import msvcrt
import time
import sys

time.sleep(1)
if msvcrt.kbhit():
    sys.stdout.write('y')
else:
    sys.stdout.write('n')

所以我在第一次启动时按任意键(使kbhit == true)但它总是落到第二个语句并打印’n’.
我有什么错误吗?

{使用Python 2.7和IDLE}

谢谢

解决方法

msvcrt.kbhit()函数仅在其所在的程序已从Windows命令行运行时才会起作用(或者,如果双击其.py文件时为其输入和输出打开控制台窗口).

如果从IDLE运行或使用pythonw.exe解释器,程序将不会连接到控制台窗口,并且msvcrt中的console-IO commands将不起作用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读