python-3.x 如何做一个不区分大小写的字符串,startswith

ldxq2e6h  于 2023-04-22  发布在  Python
关注(0)|答案(2)|浏览(104)

我需要在self.all = variable.startswith(('a', 'e' , 'i', 'o', 'u'))中使用小写的(a, e, i, o, u)和大写的(A, E, I, O, U)
我不希望Apple和apple有两个变量,但总是使用相同的变量x(在其中我将手动更改Apple或apple)。
我想要的是在x中写入Apple和在x中写入apple时都打印ok。因此,我希望您手动将Apple替换为apple并尝试正确打印ok

x = "Apple"

class Vocal:
    def __init__(self, variable):
        self.all = variable.startswith(('a', 'e', 'i', 'o', 'u'))
        
vocal = Vocal(x)

if vocal.all:
    print(x, ": ok")
else:
    print(x, ": no")
yhuiod9q

yhuiod9q1#

您可以在检查之前将字符串转换为小写。

variable.lower().startswith(('a', 'e', 'i', 'o', 'u'))

或者,您可以使用带ignore case标志的正则表达式。

bool(re.match('(?i)[aeiou]', variable))
bfrts1fy

bfrts1fy2#

可以使用.upper()命令或.lower()命令将字符串中的所有字符转换为大写或小写

class Vocal:
    def __init__(self, variable):
        self.Vocal = variable.lower().startswith(('a', 'e', 'i', 'o', 'u'))

相关问题