Heim >Backend-Entwicklung >Python-Tutorial >Meine Python-Sprachlösung für die Aufgabe aus der Weekly Challenge
Die von Mohammad S. Anwar organisierte Weekly Challenge ist ein freundschaftlicher Wettbewerb, bei dem Entwickler gegeneinander antreten, indem sie zwei Aufgaben lösen. Es fördert die Teilnahme von Entwicklern aller Sprachen und Niveaus durch Lernen, Teilen und Spaß haben.
Letzte Woche habe ich an der Weekly Challenge 299 teilgenommen, indem ich Aufgabe 1: Wörter ersetzen gelöst habe. Die Aufgabe forderte die Entwickler dazu auf, ein Skript zu schreiben, das bei Angabe eines Arrays und eines Satzes alle Wörter im Satz ersetzt, die mit einem der Wörter im Array beginnen.
In diesem Beitrag präsentiere ich einen Überblick und meine Lösung für Aufgabe 1: Wörter aus der wöchentlichen Herausforderung 299 ersetzen und schließe mit einem kurzen Fazit.
Sie erhalten eine Reihe von Wörtern und einen Satz.
Schreiben Sie ein Skript, um alle Wörter im angegebenen Satz zu ersetzen, die mit einem der Wörter im angegebenen Array beginnen.
Die wöchentliche Herausforderung 299, Aufgabe 1: Wörter ersetzen
Beispiele 1–3 veranschaulichen die erwarteten Ergebnisse aus gegebenen Eingaben.
Input: @words = ("cat", "bat", "rat") $sentence = "the cattle was rattle by the battery" Output: "the cat was rat by the bat"
Eine Ausgabe kann erhalten werden, indem jedes Wort in $sentence durch $word aus @words ersetzt wird, wenn es mit $word beginnt, zum Beispiel:
Input: @words = ("a", "b", "c") $sentence = "aab aac and cac bab" Output: "a a a c b"
Input: @words = ("man", "bike") $sentence = "the manager was hit by a biker" Output: "the man was hit by a bike"
def replace_word(sentence, this_word): return ' '.join([this_word if word.startswith(this_word) else word for word in sentence.split(' ')]) def replace_words(words, sentence): for word in words: sentence = replace_word(sentence, word) return sentence
Meine Lösung verwendet zwei Funktionen: replace_word und replacement_words.
Die Funktion „replace_word“ ersetzt jedes Wort im Zeichenfolgensatz, das mit „this_word“ beginnt, durch „this_word“, wobei die integrierten Zeichenfolgenmethoden „split“, „startswith“ und „join“ sowie ein Listenverständnis verwendet werden.
Die Funktion „replace_words“ wendet „replace_word“ nacheinander auf den Satz für jedes Wort im Array „words“ an. Anschließend wird der transformierte Satz zurückgegeben.
In diesem Beitrag habe ich einen Überblick über und meine Lösung für Aufgabe 1: Wörter aus der wöchentlichen Herausforderung 299 ersetzen vorgestellt.
Da ich in meiner Lösung integrierte Methoden wie „split“, „join“ und „startswith“ verwendet habe, ist sie unkompliziert, ausführlich und vielleicht leicht zu verstehen. Ein solcher Ansatz kann für Sie hilfreich sein, wenn Sie neu in Python sind, neu in der Programmierung sind oder mit regulären Ausdrücken nicht vertraut sind.
Das obige ist der detaillierte Inhalt vonMeine Python-Sprachlösung für die Aufgabe aus der Weekly Challenge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!