2015-09-05 132 views
-4

請幫忙我不知道如何編寫這個函數。我嘗試了ceaser密碼功能,但沒有奏效。有任何想法嗎?在Python代碼中移動數字

編寫一個函數循環(S,n),它接受'0'和'1'的字符串S和一個整數n並返回一個字符串,其中S已將其最後一個字符移動到初始位置n次。例如,週期('1110110000',2)將返回'0011101100'。

+1

提示:如果' s ='1110110000',什麼是'[: - 2]',什麼是'[-2:]'? – BrianO

+1

你正在尋找的谷歌搜索條件是「字符串切片」。 – MattDMo

+1

聽起來像功課。 – GingerPlusPlus

回答

1

你正在尋找的功能是:

def cycle(s, n): 
    return s[-n:] + s[:-n] 
0

你可以按如下方式使用Python的deque數據類型:

import collections 

def cycle(s, n): 
    d = collections.deque(s) 
    d.rotate(n) 
    return "".join(d) 

print cycle('1110110000', 2) 

這將顯示:

0011101100