Python更改字符串的大写
示例
Python的字符串类型提供了许多对字符串大写的功能。这些包括:
str.casefold
str.upper
str.lower
str.capitalize
str.title
str.swapcase
对于unicode字符串(Python3中的默认值),这些操作不是1:1映射或不可逆的。这些操作大多数是出于显示目的,而不是标准化。
str.casefold()
str.casefold创建一个适用于不区分大小写比较的小写字符串。比起str.lower小写的字符串,它可能更具攻击性,并且可能会修改已经小写的字符串或导致字符串的长度增加,并且不打算用于显示目的。
"XßΣ".casefold() #'xssσ' "XßΣ".lower() #'xßς'
案例折叠下发生的转换由Unicode联盟在CaseFolding.txt其网站上的文件中定义。
str.upper()
str.upper接受字符串中的每个字符并将其转换为等效的大写字母,例如:
"This is a 'string'.".upper() # "THIS IS A 'STRING'."
str.lower()
str.lower相反它接受字符串中的每个字符,并将其转换为等效的小写字母:
"This IS a 'string'.".lower() # "this is a 'string'."
str.capitalize()
str.capitalize返回字符串的大写版本,即,使第一个字符为大写字母,其余字符为小写字母:
"this Is A 'String'.".capitalize() #大写第一个字符并小写所有其他字符 # "This is a 'string'."
str.title()
str.title返回字符串的标题大小写形式,即单词开头的每个字母都大写,而所有其他字母都小写:
"this Is a 'String'".title() # "This Is A 'String'"
str.swapcase()
str.swapcase返回一个新的字符串对象,其中所有小写字符都交换为大写,所有大写字符都交换为小写:
"this iS A STRiNG".swapcase() #交换每个字符的大小写 # "THIS Is a strIng"
用作str类方法
值得注意的是,这些方法既可以在字符串对象上调用(如上所示),也可以作为该类的类方法str调用(显式调用str.upper,等等)。
str.upper("This is a 'string'") # "THIS IS A 'STRING'"
当将这些方法之一同时应用于多个字符串(例如一个map 函数)时,这非常有用。
map(str.upper,["These","are","some","'strings'"]) # ['THESE', 'ARE', 'SOME', "'STRINGS'"]