在Python中操作大写和小写字母的字符串方法列表

商业

Python 的字符串类型 (str) 标配了操作大写和小写字母的方便方法。你可以在大写和小写之间转换,并确定大小写。

这里提供了以下信息。

  • 大写和小写字母之间的转换
    • 基本用途
    • 处理全尺寸和半尺寸字符
    • str.upper()将所有字母转换成大写字母
    • str.lower()将所有字母转换为小写
    • str.capitalize()将第一个字母转换成大写,其余的转换成小写。
    • str.title()将一个词的第一个字母转换成大写,其余的转换成小写。
    • str.swapcase()将大写字母转换成小写字母,将小写字母转换成大写字母。
  • 确定大写和小写字母
    • str.isupper(): 判断所有字母是否为大写字母
    • str.islower(): 确定所有字符是否为小写。
    • str.istitle(): 确定它是否是一个标题案件。
  • 以不区分大小写的方式比较字符串

大写和小写字母之间的转换

基本用途

首先,我将解释基本用法。我们将使用upper()方法将所有字母大写作为一个例子,但这同样适用于其他方法。

为了方便起见,我们写 “转换”,但在 Python 中,字符串类型 (str) 对象是不可更新的,所以原始字符串 (例子中的 s_org) 本身并没有改变。

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

print(s_org)
# pYThon proGramminG laNguAge

如果你以后想使用转换后的字符串,你可以把它存储在一个新的变量中,如下所示。

s_new = s_org.upper()
print(s_new)
# PYTHON PROGRAMMING LANGUAGE

也可以覆盖原始变量。

s_org = s_org.upper()
print(s_org)
# PYTHON PROGRAMMING LANGUAGE

处理全尺寸和半尺寸字符

如果一个字符是区分大小写的,如字母表,它将被转换为单字节和双字节的字符。

不区分大小写的字符,如数字和汉字,保持不变。这个例子是针对upper()的,但同样适用于其他方法。

s_org = 'Pyhon Python 123'

print(s_org.upper())
# PYHON PYTHON 123

str.upper(): 将所有字母转换为大写字母

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

str.lower(): 将所有字符转换为小写。

s_org = 'pYThon proGramminG laNguAge'

print(s_org.lower())
# python programming language

str.capitalize(): 将第一个字母转换成大写,其余的转换成小写。

s_org = 'pYThon proGramminG laNguAge'

print(s_org.capitalize())
# Python programming language

str.title(): 将单词的第一个字母转换成大写,其余的转换成小写。

转换为所谓的产权案件。

s_org = 'pYThon proGramminG laNguAge'

print(s_org.title())
# Python Programming Language

str.swapcase(): 将大写字母转换成小写字母,将小写字母转换成大写字母

互换大写和小写字母。

s_org = 'pYThon proGramminG laNguAge'

print(s_org.swapcase())
# PytHON PROgRAMMINg LAnGUaGE

确定大写和小写字母

在下面的例子中,方法是直接从字符串字面上调用的,如'python',但当存储在变量中时也是如此,如前面的例子。

str.isupper(): 确定所有字母是否为大写。

isupper()如果包含至少一个区分大小写的字符,并且都是大写字母,则返回true,否则返回false。

print('PYTHON'.isupper())
# True

print('Python'.isupper())
# False

如果字符是区分大小写的,即使是双字节的字符也会被判断出来。

print('PYTHON'.isupper())
# True

如果甚至包括一个区分大小写的字符,不区分大小写的字符将被忽略,但如果不包括区分大小写的字符(所有字符都不区分大小写),则判定为假。

print('PYTHON 123'.isupper())
# True

print('123'.isupper())
# False

str.islower(): 确定所有字符是否为小写字母

islower()如果包含至少一个大小写的字符,并且都是小写,则返回真,否则返回假。

print('python'.islower())
# True

print('Python'.islower())
# False

如果字符是区分大小写的,即使是双字节的字符也会被判断出来。

print('python'.islower())
# True

如果甚至包括一个区分大小写的字符,不区分大小写的字符将被忽略,但如果不包括区分大小写的字符(所有字符都不区分大小写),则判定为假。

print('python 123'.islower())
# True

print('123'.islower())
# False

str.istitle()。判断该案例是否为标题案例。

istitle()如果字符串是标题大小写(单词的第一个字母是大写,其余是小写),则返回true,否则返回false。

print('Python Programming Language'.istitle())
# True

print('PYTHON Programming Language'.istitle())
# False

如果它包含不区分大小写的字符,如果不区分大小写的字符前面有一个小写字母,它将是假的。

print('★Python Programming Language'.istitle())
# True

print('Python★ Programming Language'.istitle())
# True

print('Py★thon Programming Language'.istitle())
# False

请注意,像上面的例子那样的字符串并不多,但在序数和其他情况下包括数字是现实的。

print('The 1st Team'.istitle())
# False

print('The 1St Team'.istitle())
# True

如果不包括区分大小写的字符(所有字符都不区分大小写),则为false。

print('123'.istitle())
# False

以不区分大小写的方式比较字符串

在比较字符串时,不同的大写和小写字母不被认为是等价的。

s1 = 'python'
s2 = 'PYTHON'

print(s1 == s2)
# False

如果你想进行不区分大小写的比较,你可以使用upper()或lower()来转换两者并进行比较。

print(s1.upper() == s2.upper())
# True

print(s1.lower() == s2.lower())
# True

print(s1.capitalize() == s2.capitalize())
# True

print(s1.title() == s2.title())
# True