2015-02-10 124 views

回答

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

或者

>>> a.replace('a',"A") 
'AhdhkhkAhfkAhAfAfkh' 
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'

+0

是+1000000000如果我可以:) – 2015-02-10 18:55:09

+1

爲什麼這比.replace()更好? – thumbtackthief 2015-02-10 18:55:57

+0

謝謝!我有替換功能,我只是沒有使用'a','A',部分! – 2015-02-10 18:57:23