2013-10-19 47 views
-1

我需要製作一個類似.lstrip的功能。我已經完成了一個函數來計算一個字母的出現次數。可以用這個函數來幫我完成這個函數,我將其稱爲* my_lstrip *?我遇到的唯一問題是如何從字符串中刪除一個字母/單詞,我只是想不出任何方式......需要製作像.lstrip的功能

只是爲了刷新任何人的記憶:lstrip刪除了主要事件串。

我不認爲索引是一個選擇,但我仍然在想,任何人的幫助將不勝感激。我已經完成了一個函數,如長度,數量,並發現如果這些可以在這裏使用任何組合,那麼很好!如果您需要更多信息,請告訴我,謝謝。如果我提出任何問題,我會發布代碼,以便其他人可以檢查它並查看我的錯誤。

回答

0

由於Python中的字符串是不可變的,所以不能從字符串中刪除任何東西。你可以做的是創造新的字符串並省略例如一些主角是這樣的:

def my_lstrip(p, s): 
    """Remove leading occurences of p from s 
    Keyword arguments: 
    p - pattern to remove 
    s - input string 

    >>> my_lstrip('f', 'foo') 
    'oo' 
    >>> my_lstrip('foo', 'foobar') 
    'bar' 
    >>> my_lstrip('foo', 'foofoofoobar') 
    'bar' 
    >>> my_lstrip('o', 'ooooofoo') 
    'foo' 
    >>> my_lstrip('fooo', 'foo') 
    'foo' 
    >>> my_lstrip('bar', 'foo') 
    'foo' 
    """ 
    return my_lstrip(p, s[len(p):]) if s.startswith(p) else s 

它可以更有效地完成(不每次你得到上場時間創建新的字符串),但我會離開,作爲爲你鍛鍊。