我是一个新手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)以获取完整说明。 –