Zacznij terazZacznij za darmo

Wyszukiwanie podciągu

Nowy dzień w pracy – czas kontynuować czyszczenie zbioru danych na potrzeby projektu przewidywania popularności filmów. Przeglądając zbiór, zauważasz pewną osobliwość: między znakiem na pozycji 37 a znakiem na pozycji 41 pojawiają się kolejne, powtarzające się słowa. Postanawiasz napisać funkcję, która znajdzie recenzje filmów wykazujące tę cechę – pamiętaj, że podana pozycja końcowa nie jest uwzględniana. Jeśli wykryjesz powtórzenie, chcesz też zmodyfikować ciąg, zastępując je pojedynczym wystąpieniem danego słowa.

Uzupełnij instrukcję if-else zgodnie z poniższymi wskazówkami.

Tekst trzech recenzji filmowych został już zapisany w zmiennej movies. Możesz użyć print(movies), aby wyświetlić tę zmienną w powłoce IPython.

To ćwiczenie jest częścią kursu

Wyrażenia regularne w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Sprawdź, czy podciąg actor występuje między znakami o indeksach 37 a 41 (włącznie). Jeśli nie zostanie wykryty, wyświetl komunikat Word not found.
  • Zastąp actor actor podciągiem actor, jeśli actor pojawia się dokładnie dwa razy pod rząd.
  • Zastąp actor actor actor podciągiem actor, jeśli actor pojawia się dokładnie trzy razy pod rząd.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

for movie in movies:
  	# If actor is not found between character 37 and 41 inclusive
    # Print word not found
    if movie.find("____", ____, ____) == ____:
        print("Word not found")
    # Count occurrences and replace two with one
    elif movie.____("____") == 2:  
        print(movie.replace("____", "____"))
    else:
        # Replace three occurrences with one
        print(movie.replace("____", "____"))
Edytuj i uruchom kod