如何在一个单词中将一个字母转换为大写字母。像wiki到wIkI

时间:2013-03-12 02:39:19

标签: python

如何在单词中将一个字母转换为大写字母。例如wiki到wIkI,我知道如何把它大写我只能把整个单词大写,或者我只能得到一个字母大写。

3 个答案:

答案 0 :(得分:1)

为什么不使用str.replace

word = 'wiki'
letter = 'i'
print word.replace(letter,letter.upper())

您可以使用string.maketransstr.translate

稍加努力地做同样的事情
import string
trans = string.maketrans(letter,letter.upper())
print word.translate(trans)

如果您反复使用相同的转换表,后一种形式可能会更有效,但除非这是一个非常紧密的循环,否则您不太可能注意到运行时的差异。后一种形式对于进行一些替换也非常好。例如,要将所有元音都设为大写,您可以使用:

trans = string.maketrans('aeiou','AEIOU')

答案 1 :(得分:0)

也许:

a = 'text'
b = ('t', 'x')
print ''.join(x.upper() if x in b else x for x in a)

答案 2 :(得分:0)

如果它只是“我”,你可以做

string = string.replace('i','I')

或者,如果有更多的字母,请尝试这样的事情:

letters = ['a','b','c','d','e','f']
string = 'acgfdb'
for l in letters:
    string = string.replace(l.lower(),l.upper())

好的,根据你的评论,你也希望得到用户的意见,然后试试......

string = raw_input('Enter a word: ')
letter = raw_input('Enter the letter to change to capital: ')
while len(letter) != 1:
    print 'enter a single letter'
    letter = raw_input('Enter the letter to change: ')
string = string.replace(l.lower(),l.upper())
print string