python - 为什么 <= 在 Python 中评估字符串的一系列字符?
问题描述
我有一个任务是编写一个 python 程序,要求用户输入一个字符,然后检查它是字母数字(不是特殊字符)还是数字,或者两者都不是,并打印它是什么。
出于好奇,我正在测试下面的方法,认为它会返回错误或打印无效输入。但是你瞧,它实际上工作得很好,但我不知道为什么。
c = input("Enter a character: ")
if 'a' <= c.lower() <= 'z' and len(c) == 1: # .lower() in case the input is either capital or lowercase
print('Your character', "'" + c + "'", 'is an alphabetical letter')
elif '0' <= c <= '9' and len(c) == 1:
print('Your character', "'" + c + "'", 'is a digit')
else:
print('Invalid input')
解决方案
推荐阅读
- amazon-ec2 - 如何在 grafana 中添加自定义数据/url 以监控指标
- xamarin.forms - 选择器值弹出窗口打开两次
- typescript - 如何避免 tslint 特定规则?
- sql-server - 模式验证:使用 Hibernate 序列生成器策略时缺少表 [SEQUENCE_NAME]
- excel - 需要从数据库读取和写入excel表
- php - PHP/MySQL 与日期比较
- jvm - 如何修复从命令提示符调用 uiautomator
- opencv3.1 - TypeError:“cv2.face_EigenFaceRecognizer”对象不可调用
- oracle - 在 PL SQL 中返回游标的函数,
- python - 打印“长”列表/数组/矩阵时如何抑制自动换行