python定义函数

完成rotate_text()函数,它接受两个参数,一个字符串data和一个整数n。如果n为正数,则函数将数据中的所有字符向前移动n个位置,字符串末尾的字符将移动到字符串的开头。如果n为O,则文本保持不变。
例如:Rotate_text ('abcde', 1)将返回字符串'eabcd"
Rotate_text ('abcde', 3)将返回字符串'cdeab"
Rotate_text ('abcde', 5)将返回字符串'abcde"
Rotate_text ('abcde', 6)将返回字符串'eabcd"…等等。
如果n为负数,则该函数将把数据中的字符向后shSe n个位置,将字符串开头的字符移到字符串末尾。
例如:Rotate_text ('abcde', -1)将返回字符串'bcdea"
rotate_text(abcde', -3) 将重新生成字符串 'deabc'
Rotate_text ('abcde', -5)将返回字符串'abcde"。等等。
注:•可以假设数据字符串至少包含一个字符。

img


def rotate_text(data, n):

写两个左移和右移函数,然后给这个函数调用

def move_right(ls):
    c = ls[len(ls)-1]
    for i in range(len(ls) - 1,0,-1):
        ls[i] = ls[i-1]
    ls[0] = c
def move_left(ls):
    c = ls[0]
    for i in range(0,len(ls)):
        ls[i] = ls[i+1]
    ls[len(ls)-1] = c
def rotate_text(data, n):
    ls = list(data)
    if(n>0):
        for i in range(1,n+1):
            move_right(ls)
    else:
        for i in range(1,-n+1):
            move_left(ls)
    print("".join(ls))
    
rotate_text("Hello_world",5)