How Do I Get This Code To Tell Me What Position A Word In The Sentence Is
varSentence = ('The fat cat sat on the mat') print (varSentence) varWord = input('Enter word ') varSplit = varSentence.split() if varWord in varSplit: print ('Found word')
Solution 1:
No need for a loop, use list.index
, protected by a try/except
block in case string is not found. list.index
returns the first occurence of the word.
sent = 'ASK NOT WHAT YOUR COUNTRY CAN DO FOR YOU ASK WHAT YOU CAN DO FOR YOUR COUNTRY.'
words = sent.split()
word = "WHAT"try:
print(words.index(word)+1)
except ValueError:
print("{} is not in the sentence".format(word))
returns 3
because index
found the word at the 3rd position (and arrays start at 0)
Solution 2:
Try with enumerate
:
for i in enumerate(varSplit):
if i[1] == varWord:
print(i[0])
You can use the above like this:
varSentence = ("The fat cat sat on the mat")
varWord = input("Enter word ")
varSplit = varSentence.split()
if varWord in varSplit:
for i inenumerate(varSplit):
if i[1] == varWord:
print("Your word is in position", i[0], "!")
break# To stop when the first position is found!else:
print ("Word not found")
Solution 3:
You just need to loop over position
:
def word_position(word):
for i in position:
if word == i[1]:
return i[0]
return"Your word is not in the sentence"
You can call the above function like this:
word = input('Which word would you like to search for?').upper()
pos = word_position(word)
Example of output:
>>>sent = 'ASK NOT WHAT YOUR COUNTRY CAN DO FOR YOU ASK WHAT YOU CAN DO FOR YOUR COUNTRY.'>>>sen1 = sent.split()>>>>>>position = enumerate(sen1)>>>>>>word = input('Which word would you like to search for?').upper()
Which word would you like to search for?'what'
>>>word
'WHAT'
>>>>>>pos = word_position(word)>>>print(pos)
2
Solution 4:
sent= 'ASK NOT WHAT YOUR COUNTRY CAN DO FOR YOU ASK WHAT YOU CAN DO FOR YOUR COUNTRY.'# This defines the variable 'sent'
sen1= sent.split() # This splits the sentence into individual wordsprint (sen1) # This tells the program to display the sentence as the individual words
Word= str(input('Which word would you like to search for?')) # Tells the user to input one of the words from the sentence that they would like to find
Word1= Word.upper() # Changes the user's input to block capitalsprint ("Searching for ", Word1) # Prints the user's input in capitals
position = list(enumerate(sen1)) # Numbers the words in the sentence starting at (ASK, 0)if Word1 in sen1: # Asks the program to check if the user's input is within the defined sentencefor word in position:
if word[1]==Word1:
print ('Your word is in the sentence at ' , word[0]+1) # Tells the program to print a certain sentence if the users' inputted word is within the sentenceelse: # Begins to tell the program what to do if the if condition is not metprint ('Your word is not in the sentence') # Tells the program what to do print if the users' inputted word is not within the sentence
Post a Comment for "How Do I Get This Code To Tell Me What Position A Word In The Sentence Is"