📅  最后修改于: 2023-12-03 15:07:55.983000             🧑  作者: Mango
在开发程序时,我们经常需要将字符串中的大写字符替换为小写字符,反之亦然。Python 提供了很多方法可以完成这个任务,本篇文章将介绍一些常用的方法。
str.lower()
和 str.upper()
Python 字符串类型提供了两种方法可以将字符串中的字符转换为小写或大写字母,分别为 str.lower()
和 str.upper()
。
示例代码:
def replace_case(string):
"""
用大写替换小写字符,反之亦然
"""
# 将字符串中的小写字符转为大写字符,并将大写字符转为小写字符
new_string = string.swapcase()
return new_string
# 测试
print(replace_case("Hello World")) # 输出:hELLO wORLD
str.translate()
和 str.maketrans()
如果要将字符串中的每个字符替换为其它的字符,可以使用 str.translate()
方法。该方法需要一个映射表作为参数,映射表可以使用 str.maketrans()
方法生成。
示例代码:
def replace_case(string):
"""
用大写替换小写字符,反之亦然
"""
# 生成映射表
table = str.maketrans("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz")
# 替换字符串中的字符
new_string = string.translate(table)
return new_string
# 测试
print(replace_case("Hello World")) # 输出:hELLO wORLD
ord()
和 chr()
函数在 Python 中,每个字符都有一个对应的 Unicode 码点,可以使用 ord()
函数获取字符的码点,使用 chr()
函数将码点转换为字符。
可以使用列表推导式将字符串中的每个字符转换为其它字符。
示例代码:
def replace_case(string):
"""
用大写替换小写字符,反之亦然
"""
# 使用列表推导式替换字符串中的字符
new_string = "".join([chr(ord(c) ^ 32) if c.isalpha() else c for c in string])
return new_string
# 测试
print(replace_case("Hello World")) # 输出:hELLO wORLD
本篇文章介绍了在 Python 中用大写替换小写字符的程序,反之亦然的方法,包括使用 str.lower()
和 str.upper()
、str.translate()
和 str.maketrans()
、列表推导式和 ord()
和 char()
函数。不同的方法适用于不同的场景,可以根据实际需要选择适合自己的方法。