【发布时间】:2022-01-22 15:22:51
【问题描述】:
我正在编写一个函数来更改字符串中偶数字母的字母大小写(空格/标点符号被忽略)。即,从"Abcd. Efgh.. Ijkl!" 到"abCd. efGh.. IJkL!"
我的代码只更改了第一个字母。最初我认为我的问题是 replace() 函数,所以我改用 .append() 函数,但结果仍然保持不变:['abcd. Efgh.. Ijkl!']
如何更改代码以捕获每个循环的结果?
def mock(string):
new_string=[]
new_letter=""
for letter in string[::2]:
if letter.islower():
new_letter= letter.upper()
new_string.append(string.replace(letter,new_letter))
elif letter.isupper():
new_letter= letter.lower()
new_string.append(string.replace(letter,new_letter))
return new_string
print(mock("Abcd. Efgh.. Ijkl!"))
【问题讨论】:
标签: python-3.x string loops