首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在按下ESCape时退出python2.x脚本

如何在按下ESCape时退出python2.x脚本
EN

Stack Overflow用户
提问于 2015-04-20 14:21:32
回答 1查看 619关注 0票数 3

我是python的新手,我有一个python2.x脚本,它要求用户在bash中输入答案A、B或C。在等待用户输入时,如果只按了退出键,如何使脚本立即退出?

现在,我有这个函数。但是,在退出键之后,我也必须按enter键。

代码语言:javascript
运行
复制
def choice(prompt):
    """
    Choose A, B or C
    ESC exits script
    """
    while True:
        char = raw_input(prompt)
        if char.encode() == '\x1B': # ESC is pressed
            sys.exit("Quitting ...")
        elif char.lower() not in ('a', 'b', 'c'):
            print("Wrong input. Please try again.")
            continue
        else:
            break
    return char

user_choice = choice("\nChoose between A - C: ")
print("You chose %s.") % user_choice.upper()

代码是UTF-8格式的,bash终端中的退出键给了我^[。据我所知,msvcrt不能在Linux上运行。可以做到这一点吗?这样脚本就可以在Windows和Linux中工作了?

EN

回答 1

Stack Overflow用户

发布于 2015-04-20 14:32:24

要在用户不必按enter键的情况下读取和输入,您可以使用msvcrt模块。你可以在here上找到更多关于它的信息。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29740566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档