如何大写特定字母

问题描述 投票:0回答:4

我要在姓名的第5个字母大写

注意:我只想使用.upper()方法“不使用大写()”

我尝试了这个但我得到IndexError:字符串索引超出范围

name = "Cristiano Ronaldo"

for t in range(0,len(name),5):
    name = str(name)[t].upper()
    print(name)
python uppercase
4个回答
3
投票
"".join([char.upper() if index > 0 and index % 5 == 0 else char for index, char in enumerate(name)])

0
投票

您可以先将str更改为list

l_name = list(name)

for i in range(0,len(l_name),5):
    l_name[i] = l_name[i].upper()

result = ''.join(l_name)

0
投票

name =“克里斯蒂亚诺·罗纳尔多”

print(''.join([ letter.upper() if (index+1) % 5 == 0 else letter for index,letter in enumerate(name)]))

[enumerate方法,用于在循环时跟踪字符串中每个字母的索引,对于5的倍数,我们正在执行letter.upper()否则letter


0
投票

使用pythonic方式:

name = "cristiano Ronaldo"
print(''.join([l if i%5 else l.upper() for i, l in enumerate(name, 1)]))
© www.soinside.com 2019 - 2024. All rights reserved.