저는 초보자 파이썬 학생이고 간단한 (그러나 지금, 복잡한, 복잡한) 연습을하고 있습니다. 나는 여러 가지 방법으로 시도했지만, 추측을 멈추기로 결정했다. 왜냐하면 그것이 학습의 정상적인 일상이 아니기 때문이다.파이썬 연습 : 마지막 글자/첫 글자
이 목록 주어진의 마지막 문자에서 다른 문자로 시작하는 목록의 첫 번째 단어를 반환하는 것을하는
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 : 죄송합니다 나는 (파이썬 3) 작동합니다 생각 내 영어 :
'lst [i] [- 1]'은'lst'의 항목 'i'를 얻은 다음 _that_ item의 마지막 항목을 가져옵니다. 그러므로 lst = [ '하늘', '너', '사용', '귀', '오른쪽'] '이면 lst [2]는'사용 '이고 lst [2] [- 1] ''사용 '의 마지막 문자 인''e' '입니다. –
대단히 감사합니다 !! :) – Nutshell93
아래 답변 중 하나가 문제를 해결하면 받아 들여야합니다 (해당 답변 옆에있는 체크 표시를 클릭하십시오). 그것은 두 가지 일을합니다. 모든 사람들이 귀하의 문제가 만족스럽게 해결되었다는 사실을 모든 사람에게 알리고, 도움을 요청한 사람에게 도움을줍니다. 자세한 설명은 [here] (http://meta.stackexchange.com/a/5235)를 참조하십시오. –