我是一個新手Python學生,我正在經歷一些簡單的(但現在,對我來說,複雜的)練習。我嘗試了很多方法,但我決定停止猜測,因爲我相信這不是一個理智的學習過程。Python練習:最後一個字母/第一個字母
我必須解決以下練習:
寫
lastfirst(lst)
功能,即,給定一個列表,返回的是一個不同的角色開始從的的 最後一個字符列表中的 第一個字前一個詞。如果沒有這樣的詞, 返回None
。例子:
lst = ['sole','elmo','orco','alba','asta']
回報'alba'
lst = ['sky','you','use','ear','right']
返回None
我試圖解決它,我曾是這樣的:
lst = ['sole','elmo','orco','alba','asta']
def lastfirst(lst):
cont = 0
d = 1
for a in lst[cont:]:
for b in lst[d:]:
if a[-1] != b[0]:
return lst[d]
else:
cont = cont + 1
d = d + 1
print(lastfirst(lst))
問題我檢測到的是:
該程序不區分第一個單詞的第一個字母和第二個單詞的最後一個字母,或第一個單詞的最後一個字母和第二個單詞的第一個字母。
PS:對不起,我的英語:)
'lst [i] [ - 1]'表示獲得'lst'的項目'i',然後獲得_that_項目的最後一項。所以如果'lst = ['sky','you','use','ear','right']',那麼'lst [2]'是''use'',並且lst [2] [ - 1] ''''''''''''',是'use'的最後一個字母。 –
非常感謝! :) – Nutshell93
如果其中一個答案解決了您的問題,您應該接受它(單擊相應答案旁邊的複選標記)。這有兩件事。它讓每個人都知道你的問題已經得到解決,讓你滿意,並且它可以幫助你幫助你。請參閱[此處](http://meta.stackexchange.com/a/5235)以獲取完整說明。 –