首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果字符串为大写,如何转换为小写字符串

如果字符串为大写,如何转换为小写字符串
EN

Stack Overflow用户
提问于 2021-10-15 18:37:44
回答 5查看 76关注 0票数 2

我正在编写这个函数来检测两个字符串是否为字谜。我想要将字符串转换为小写字符,以防其中一个字符是大写的,但我所写的内容似乎不能正常工作。

代码语言:javascript
复制
# function to check if two strings areanagram or not
def eh_anagrama(cad1, cad2):
    if cad1.islower() == False:
        cad1.lower()
    if cad2.islower() == False:
        cad2.lower()
    if(sorted(cad1)== sorted(cad2)):
        print("The strings are anagrams.")
    else:
        print("The strings aren't anagrams.")
EN

回答 5

Stack Overflow用户

发布于 2021-10-15 18:46:45

你不需要检查它们是否更低,因为它们无论如何都会以小写形式进行比较:

代码语言:javascript
复制
def eh_anagrama(cad1, cad2):
    if sorted(cad1.lower()) == sorted(cad2.lower()):
        print("The strings are anagrams.")
    else:
        print("The strings aren't anagrams.")
票数 1
EN

Stack Overflow用户

发布于 2021-10-15 18:40:05

str.lower()返回字符串作为较低的值,您需要分配原始变量。

您需要将较低的str备份到原始str,如下所示:(cad1.lower() -> cad1 = cad1.lower(),cad2.lower() -> cad2 = cad2.lower())

Shotest方法如下:(因为str.lower() back string你可以像下面这样尝试)

代码语言:javascript
复制
def eh_anagrama(cad1, cad2):
    if sorted(cad1.lower()) == sorted(cad2.lower()):
        print("The strings are anagrams.")
    else:
        print("The strings aren't anagrams.")

你的原始代码:

代码语言:javascript
复制
def eh_anagrama(cad1, cad2):
    if cad1.islower() == False:
        cad1 = cad1.lower()
    if cad2.islower() == False:
        cad2 = cad2.lower()
    if sorted(cad1)== sorted(cad2):
        print("The strings are anagrams.")
    else:
        print("The strings aren't anagrams.")
票数 0
EN

Stack Overflow用户

发布于 2021-10-15 18:40:20

调用cad1.lower()会将此字符串转换为小写,但未使用此值,您可以尝试使用cad1 = cad1.lower()

编辑:而且,与if cad1.islower() == False相比,使用if not cad1.islower()更具“pythonic风格”

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69589216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档