首页 > 解决方案 > 如何更改我的代码以反转某些子字符串?

问题描述

我试图将字符串中的前 2 个字符移到末尾,将后 2 个字符移到前面。然后我想反转我移动的字符。

例如,bajui。首先我们交换第一个和最后两个字符,给uijba,然后我想反转uiiubaab,因此最终的结果应该是iujab

这是我当前的代码:

def startToEnd(kata):
   kata = kata[-2:] + kata[2:3] + kata[:2]
   return kata
print(startToEnd("bajui"))

有了这个,它会给uijba。如何反转已移动的字符?

标签: pythonpython-3.xstringslicereverse

解决方案


您可以使用字符串切片来实现这一点 - 请注意,这仅适用于长度至少为 4 的字符串。

代码:

def startToEnd(kata):
    return kata[:-3:-1] + kata[2:-2] + kata[1::-1]

输出:

>>> startToEnd('makam')
'makam'
>>> startToEnd("bajui")
'iujab'

推荐阅读