python如何判断用户输入回车键?

您所在的位置:网站首页 回车键怎么没用了 python如何判断用户输入回车键?

python如何判断用户输入回车键?

2023-08-09 07:03| 来源: 网络整理| 查看: 265

前言

最近在写代码的时候,需要判断一下用户是不是敲了回车键,于是写出了这样的代码:

if input('输入回车键进入程序') == '\n': print('开始程序。')

当时的目的是为了用户不输入任何内容,只敲回车键,无奈,print('开始程序。')永远也无法执行…… 正确的代码应该是:

if input('输入回车键进入程序') == '': print('开始程序。')

把== '\n'换成 == ''即可。

当敲下回车键时,表示输入结束了,而在input()函数中,默认是把回车键删除,所以最后输入的内容只剩下空的字符串。

既然都说到这了,那就一起看看 input() 的前世今生吧

input() 函数的前世今生 前世

在python2.x中,有分raw_input() 和input()两个标准输入函数 儿python3.x中,只保留了input() 一个标准输入函数

简单说区别就是,在python2.x中,raw_input()输入的内容不管是数字还是其他字符都会转化为字符串,而input()只能输入纯数字 在python3.x中,input()可以输入数字和其他字符,但都会转化为字符串,相当于python2.x中的raw_input() 如果想要详细了解的话,可以看这篇文章,写得很详细啦:

https://blog.csdn.net/u011475210/article/details/77777482

今生

好了,就不聊那么多过去了,看看现在input()还有什么好玩的玩法。

玩法1

让input()遇到回车键也能持续输入

我们无法修改input()函数让它忽略掉回车键,但是我们可这样“忽悠”它:

txt = '' while True: k = input() if k == 'quit': break txt += k + '\n' print('*****以下是输出内容*****') print('txt:\n'+txt)

请看效果:

在这里插入图片描述

这样我们就可以让input()好像忽略掉了回车键,可以持续输入内容,输入quit之后敲回车才结束

还有更简单的写法,看起来更高级:

txt = '' for k in iter(input, 'quit'): txt += k+'\n' print('*****以下是输出内容*****') print(txt) 玩法2

限制用户的输入内容,比如只能输入字母

方式1:在输出结果上进行过滤,可以用正则表达式实现。

import re while True: txt = input() txt = re.sub('[^a-zA-Z]','',txt) print(txt)

请看效果: 在这里插入图片描述

方式2:在键盘上输入上进行限制,那这样的话我们就要监听用户的键盘了 使用pynput第三方库可以对用户的键盘进行监听和操作。

from pynput.keyboard import Listener import threading def listening(): def on_press(key): try: if not(65


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3