将字符串中的特定字符转换为大写字母

时间:2015-02-10 18:53:11

标签: python string uppercase

如何将字符串中的特定字母转换为a中的所有'ahdhkhkahfkahafafkh'为大写?

我似乎只能找到将第一个单词或大写/小写整个字符串大写的方法。

3 个答案:

答案 0 :(得分:7)

您可以将str.translatestring.maketrans

一起使用
>>> import string
>>> table = string.maketrans('a', 'A')
>>> 'abcdefgahajkl'.translate(table)
'AbcdefgAhAjkl'

如果您想将'a''b'替换为大写版本,那么这真的很棒......那么您只需更改转换表:

table = string.maketrans('ab', 'AB')

或者,如果你真的只做1对1交换,你可以使用str.replace

>>> 'abcdefgahajkl'.replace('a', 'A')
'AbcdefgAhAjkl'

当您只有一个替换品时,此方法会闪耀。它取代了子串而不是字符,所以'Bat'.replace('Ba', 'Cas') - > 'Cast'

答案 1 :(得分:2)

'banana'.replace('a', "A")

来自文档:https://docs.python.org/2/library/string.html#string.replace

答案 2 :(得分:1)

>>> a = 'ahdhkhkahfkahafafkh'
>>> "".join(i.upper() if i == 'a' else i for i in a)
'AhdhkhkAhfkAhAfAfkh'

或者

>>> a.replace('a',"A")
'AhdhkhkAhfkAhAfAfkh'