Как считать слова в строке в Python - PullRequest
0 голосов
/ 07 октября 2019

Я хочу иметь возможность вводить слово и Python подсчитывать количество слов до этого слова в предыдущем абзаце.

Это программа, которая поможет вам узнать, сколько слов вы можетепрочитайте за одну минуту. Абзац печатается и таймер устанавливается на одну минуту. Когда минута заканчивается, пользователь вводит слово, которое они достигли в абзаце, и программа должна сказать вам, сколько слов вы прочитали до этого.

print ('write start to begin the program')
x = ('')

if x == (''):
    x = input()

if x == 'start':
    import threading 
    def yyy(): 
        print("time is up")
        print('write the last word you read')
        word = input()
        #MISSING CODE

    timer = threading.Timer(10.0, yyy) 
    timer.start()
    print ('paragraph to read')

это сокращено, но мне нужна функция для python для подсчета слов в абзаце до той, которую пользователь вводит по истечении времени, и для печати этого числа

1 Ответ

0 голосов
/ 07 октября 2019

Вы можете использовать split(), чтобы разбить строку абзаца на список слов:

#paragraph_text = "One two three four"
words = paragraph_text.split(' ')
#words = ["One", "two", "three", "four"]

Затем вы можете просмотреть этот список, сравнив его со словом, введенным пользователем:

for counter, candidate in enumerate(words):
    if candidate == word:
        print("You have read %s words!" % (counter + 1))
        #Other actions
        break

Это очень упрощенная реализация;это не будет работать, если есть повторяющиеся слова и т. д.

...