如何实现Python字符串startswith方法的大小写不敏感匹配
解决方案
这里提供两种简单的修改方式,都能实现无论x是Apple还是apple都输出ok的需求:
方法一:统一转换为小写后判断
将输入字符串转为小写,再判断是否以小写元音开头,无需维护大小写两套元音列表:
x = "Apple" # 可手动改为"apple"测试 class Vocal: def __init__(self, variable): self.all = variable.lower().startswith(('a', 'e', 'i', 'o', 'u')) vocal = Vocal(x) if vocal.all: print(x, ": ok") else: print(x, ": no")
方法二:直接扩展匹配的元音元组
在startswith的参数中加入所有大写元音,直接匹配所有可能的元音开头:
x = "Apple" # 可手动改为"apple"测试 class Vocal: def __init__(self, variable): self.all = variable.startswith(('a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U')) vocal = Vocal(x) if vocal.all: print(x, ": ok") else: print(x, ": no")
内容的提问来源于stack exchange,提问作者Evangelos Dellas
相关产品推荐
相关产品推荐

