如何替换字符串中的单个单词而不是用相同的字符替换其他单词

2024-09-28 13:14:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个密码:

s = 'letter of letters'
for i in s.split(" "):
    if len(i) > 4:
        s = s.replace(i, i[::-1])
print s

但是这个打印“rettel of rettels”,意思是代码替换字符串中的所有字母,但我只需要用每个单词自己替换。 怎么可能只查一个单词而不是全部查一串?我需要'rettel of srettel'


Tags: of代码in密码forlenif单词
1条回答
网友
1楼 · 发布于 2024-09-28 13:14:51

您需要分别收集所有修改过的单词,而不是修改循环中的字符串:

words = s.split(' ')
results = []
for word in words:
    if len(word) > 4:
       results.append(word[::-1])
    else:
       results.append(word)

print(' '.join(results))

相关问题 更多 >

    热门问题