Python :: Aufgabe #257 :: Lösung #4
7 Lösungen
#257
Namen in Initialen umwandeln
Anfänger - Python
von JKooP
- 29.03.2020 um 15:07 Uhr
Schreibe ein Programm, mit dem es möglich ist, einen beliebig langen Namen (Vorname(n), Nachname(n), Namenszusätze) als Initialen darzustellen.
Ebenfalls sollen durch Bindestrich getrennte Namen einbezogen werden.
Optional soll die Ausgabe sowohl mit Bindestrich als auch in Großbuchstaben erfolgen.
Beispiel:
Karl-Theodor Maria Nikolaus Johann Jacob Philipp Franz Joseph Sylvester Buhl-Freiherr von und zu Guttenberg
--> KTMNJJPFJSBFvuzG
Optional:
--> K-TMNJJPFJSB-FvuzG
--> KTMNJJPFJSBFVUZG oder K-TMNJJPFJSB-FVUZG
Viel Spaß
Ebenfalls sollen durch Bindestrich getrennte Namen einbezogen werden.
Optional soll die Ausgabe sowohl mit Bindestrich als auch in Großbuchstaben erfolgen.
Beispiel:
Karl-Theodor Maria Nikolaus Johann Jacob Philipp Franz Joseph Sylvester Buhl-Freiherr von und zu Guttenberg
--> KTMNJJPFJSBFvuzG
Optional:
--> K-TMNJJPFJSB-FvuzG
--> KTMNJJPFJSBFVUZG oder K-TMNJJPFJSB-FVUZG
Viel Spaß
#4
von Asthos (410 Punkte)
- 03.04.2020 um 21:40 Uhr
Python-Code
#!/usr/bin/env python # -*- coding: utf-8 -*- #Aufgabe: #Schreibe ein Programm, mit dem es möglich ist, einen beliebig langen Namen (Vorname(n), Nachname(n), Namenszusätze) als Initialen darzustellen. #Ebenfalls sollen durch Bindestrich getrennte Namen einbezogen werden. #Optional soll die Ausgabe sowohl mit Bindestrich als auch in Großbuchstaben erfolgen. #Beispiel: #Karl-Theodor Maria Nikolaus Johann Jacob Philipp Franz Joseph Sylvester Buhl-Freiherr von und zu Guttenberg #--> KTMNJJPFJSBFvuzG #Optional: #--> K-TMNJJPFJSB-FvuzG #--> KTMNJJPFJSBFVUZG oder K-TMNJJPFJSB-FVUZG #Viel Spaß NAME = 'Karl-Theodor Maria Nikolaus Johann Jacob Philipp Franz Joseph Sylvester Buhl-Freiherr von und zu Guttenberg' def initialen_ermitteln(name): initialen = '' for i, c in enumerate(name): #ersten Buchstaben übernehemn if i == 0: initialen = name[i] #Falls aktueller Buchstabe ein Leerzeichen ist, dann den nächsten Buchstaben übernehmen if c == ' ': initialen = initialen + name[i+1] if c == '-': initialen = initialen + name[i] + name[i+1] #Falls mehrere Leerzeichen im Namen existieren diese nun hier raus löschen return initialen.replace(' ','') print(initialen_ermitteln(NAME))
Ergebnis: K-TMNJJPFJSB-FvuzG
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1