Python :: Aufgabe #320 :: Lösung #3

5 Lösungen Lösungen öffentlich
#320

Text gemäß Vorlage neu sortieren

Anfänger - Python von JKooP - 12.02.2021 um 09:53 Uhr
Ein durcheinandergeratener Text soll gemäß einer Vorlage (Array) neu sortiert werden.

Dazu soll eine Methode/Funktion erstellt werden, mit der man die Zeichen des
Ausgangstextes gemäß den vorgegebenen Positionen im Array neu anordnet.

Ausgangstext = "programmyourtrainer"

Array = [ 9, 10, 11, 12, 13, 14, 15, 16, 5, 6, 7, 8, 0, 1, 2, 3, 4, 17, 18 ]

Zieltext = "trainyourprogrammer"

Erläuterung:

Das erste Zeichen des Ausgangstextes (p) muss gem. Array an die 9. Position.
Das Zeichen (y) muss an die 5. Position. Achtung: Array ist nullbasiert!

_ _ _ _ _ y _ _ _ p _ _ _ _ _ _ _ _


Viel Spaß
#3
vote_ok
von felixTheC (1200 Punkte) - 17.02.2021 um 13:56 Uhr
Quellcode ausblenden Python-Code
from typing import List


def sort_text_by_arr(text: str, arr: List[int]) -> str:
    assert len(text) == len(arr), f'params must have same size'
    dct = {elem: char for char, elem in zip(text, arr)}
    return ''.join([dct[val] for val in sorted(dct)])

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben