如何判断输入内容是否为字母?无需编写26个if语句
判断输入是否为单个字母的Python解决方案
你的原代码问题在于letter是未定义的变量,逻辑完全不成立。不用写26个if语句,Python有更简洁的现成方法:
通用解决方案(支持全语言字母)
直接用字符串内置的isalpha()方法,同时判断输入长度为1,避免用户输入多字符的情况:
a = input("Input one letter: ") if len(a) == 1 and a.isalpha(): print("wow u inputted a letter") else: print("not a letter")
len(a) == 1:确保用户只输入了一个字符a.isalpha():判断字符是否为字母(大小写都支持,也包含é、ñ这类非英语字母)
仅支持英文字母的方案
如果需要严格限制为26个英文字母,可以用集合实现快速查找:
a = input("Input one letter: ") # 集合存储英文字母,查找效率更高 english_letters = set('abcdefghijklmnopqrstuvwxyz') if len(a) == 1 and a.lower() in english_letters: print("wow u inputted a letter") else: print("not a letter")
内容的提问来源于stack exchange,提问作者key_alt
相关产品推荐
相关产品推荐

