gpt4 book ai didi

python - 如何仅将字符串中特定索引处的特定字母更改为大写/小写

转载 作者:太空宇宙 更新时间:2023-11-04 03:41:29 27 4
gpt4 key购买 nike

代码如下:

def upper_every_nth (s, n):
i = 0
while len (s) > (i * (0 + n)) :
character = s[i * (0 + n)]
s = s.replace(character, character.upper(), 1)
i = i + 1
return (s)

我希望它返回一个与 s 相同的字符串,除了每个第 n 个字符(从位置 0 开始)都是大写。

>>> upper_every_nth("cat", 2)
'CaT'
>>> upper_every_nth("hat", 3)
'Hat'

问题是我不能使用 .replace 方法,因为它会替换字符串中所有出现的该字母,如果不是,则只替换第一次出现的字母。

假设字符串是“deer”。我想将第二次出现的“e”转换为大写。但是使用 .replace 方法,要么我得到“dEEr”,要么得到“dEer”。

最佳答案

您需要使用索引。以下是如何用字符 ch 替换字符串 s 的第 k 字符:

s = s[:k] + ch + s[k+1:]

要了解 s[:k]s[k+1:] 的工作原理,请阅读 Explain Python's slice notation . + 只是将几个字符串连接在一起。

关于python - 如何仅将字符串中特定索引处的特定字母更改为大写/小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26206346/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com