You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现不区分大小写的Anagram(变位词)判断问题咨询

修改方案

你只需在去除空格的步骤后,将两个字符串统一转为全小写(或全大写)即可实现不区分大小写的判断,修改后的完整代码如下:

str1 = input("Enter First String: ")
str2 = input("Enter Second String: ") 
# 去除空格后统一转小写,消除大小写差异
str1 = ''.join(str1.split()).lower()
str2 = ''.join(str2.split()).lower()

if sorted(str1) == sorted(str2) and len(str1) and len(str2):
    print("Strings are anagram") 
else:
    print("Strings are not anagram")

说明

  • 新增的lower()方法会将字符串内所有大写字符转换为小写,后续排序对比时就不会受输入大小写的影响,输入Listen和Silent也会被判定为变位词
  • 如果需要统一转大写,把lower()替换为upper()效果完全相同
  • 原有逻辑里的len(str1)和len(str2)判断是为了避免两个空字符串被判定为变位词,如果你允许这种场景,直接删除这两个判断条件即可

内容的提问来源于stack exchange,提问作者Ross Cruz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 01:45:03