사용자가 문장에 입력하는 단어의 위치를 찾는 코드를 작성했습니다. 그러나 그들이 단어를 입력 한 후에 나는 위치를 찾고 그것을 인쇄하고 그곳에서 멈추도록 코드가 필요합니다. 그러나 그것은 멈추지 않고 대신 else 문으로 이어집니다. else 문은 문장에없는 단어를 입력하면 발생합니다. 만약 내가 break를 사용한다면, 단어가 문장에서 두 번 이상 나타나면 단어의 첫 번째 위치 만 인쇄합니다. 어떻게해야합니까?for 루프를 중단해야하지만 휴식은 작동하지 않습니다.
sentence = "ask not what your country can do for you ask what you can do for your country"
print(sentence)
keyword = input("Input a keyword from the sentence: ").lower()
words = sentence.split(' ')
for i, word in enumerate(words):
if keyword == word:
print("The position of %s in the sentence is %s" % (keyword,i+1))
if keyword != word:
keyword2 = input("That was an invalid input. Please enter a word that is in the sentence: ").lower()
words = sentence.split(' ')
for i, word in enumerate(words):
if keyword2 == word:
print("The position of %s is %s" % (keyword2,i+1))
단어가 두 번 이상 나타나는 경우 단어의 각 위치를 원하십니까? – Doshmajhan
조건이 만족되면'break' 명령을 사용하십시오. – user590028
그냥 함수에 포장하고 값을 찾으면 반환 할 수 있습니다. 그런 다음 함수를 호출 할 때 반환 된 값을 인쇄하십시오. 그렇게하면 코드를 다시 코딩하지 않고도 다른 인스턴스에서 다시 사용할 수 있습니다. :) – codykochmann