Python 如何更改代码以反转某些子字符串?
我试图将字符串中的前两个字符移到末尾,最后两个字符移到前面。然后我想反转我移动的字符 例如,Python 如何更改代码以反转某些子字符串?,python,python-3.x,string,slice,reverse,Python,Python 3.x,String,Slice,Reverse,我试图将字符串中的前两个字符移到末尾,最后两个字符移到前面。然后我想反转我移动的字符 例如,bajui。首先我们交换第一个和最后两个字符,给出uijba,然后我想将ui转换成iu,将ba转换成ab,因此最终结果应该是iujab 这是我目前的代码: def startToEnd(kata): kata = kata[-2:] + kata[2:3] + kata[:2] return kata print(startToEnd("bajui")) 这样,它将给出uijba。如何反转已
bajui
。首先我们交换第一个和最后两个字符,给出uijba
,然后我想将ui
转换成iu
,将ba
转换成ab
,因此最终结果应该是iujab
这是我目前的代码:
def startToEnd(kata):
kata = kata[-2:] + kata[2:3] + kata[:2]
return kata
print(startToEnd("bajui"))
这样,它将给出
uijba
。如何反转已移动的字符?您可以使用字符串切片来实现这一点-注意,这仅适用于长度至少为4的字符串
代码:
def startToEnd(kata):
return kata[:-3:-1] + kata[2:-2] + kata[1::-1]
>>> startToEnd('makam')
'makam'
>>> startToEnd("bajui")
'iujab'
输出:
def startToEnd(kata):
return kata[:-3:-1] + kata[2:-2] + kata[1::-1]
>>> startToEnd('makam')
'makam'
>>> startToEnd("bajui")
'iujab'