Python中如何检查字符串是否仅包含某个指定字符?
如何检查字符串是否仅包含特定字符?
这里给你几个实用的Python实现方案,直接就能用:
方法1:使用all()函数遍历判断
all()会验证迭代器中所有元素是否为True,正好可以用来检查字符串里每个字符都等于目标字符:
def does_contain_only(target_char, input_str): return all(char == target_char for char in input_str) # 测试示例 print(does_contain_only("a", "aaaaaa")) # 输出 True print(does_contain_only("a", "aaaaba")) # 输出 False
方法2:用count()对比长度
统计目标字符在字符串中的出现次数,如果等于字符串总长度,说明所有字符都是目标字符:
def does_contain_only(target_char, input_str): # 可选:处理空字符串的情况,根据你的需求调整返回值 if not input_str: return False return input_str.count(target_char) == len(input_str) # 测试示例 print(does_contain_only("a", "aaaaaa")) # 输出 True print(does_contain_only("a", "aaaaba")) # 输出 False
方法3:集合去重验证
把字符串转成集合后,若集合长度为1且唯一元素是目标字符,说明所有字符一致:
def does_contain_only(target_char, input_str): if not input_str: return False char_set = set(input_str) return len(char_set) == 1 and target_char in char_set # 测试示例 print(does_contain_only("a", "aaaaaa")) # 输出 True print(does_contain_only("a", "aaaaba")) # 输出 False
你之前的代码" " in cmd只能判断字符串里包含空格,和「仅包含特定字符」的需求不匹配,上面的几种方法都能实现你要的逻辑。
内容的提问来源于stack exchange,提问作者fox tech.
相关产品推荐
相关产品推荐

