Seite 1 von 1
komme nicht weiter
Verfasst: Donnerstag 21. April 2022, 11:12
von efgheni
Hi leute,
ich muss diese aufgabe lösen. leider habe ich 0 talent fürs programmieren. kann mir jemand sagen, wie ich die aufgabe lösen kann?
Lege eine Variable an text1 mit dem Wert
" das ist ein toller text?"
Entferne die Leerzeichen am Anfang des Textes (Mit einem Python Befehl!)
Der Text soll groß geschrieben werden
Ändere das ? am Ende zu einem !
Lass den fertigen Text auf der Konsole ausgeben.
Re: komme nicht weiter
Verfasst: Donnerstag 21. April 2022, 11:45
von Dennis89
Hallo,
wo genau kommst du nicht weiter?
Wir können es ja mal vergleichen. Mein erster Teil wäre:
Jetzt postest du deinen ersten Teil und gleich deinen zweiten. Bzw. deinen zweiten Versuch mit Problembeschreibung, dann wird das hier gelöst.
Grüße
Dennis
Re: komme nicht weiter
Verfasst: Donnerstag 21. April 2022, 11:48
von /me
Dich wird ja jetzt nicht jemand aus heiterem Himmel mit vorgehaltener Waffe zur Lösung dieser Aufgabe zwingen. Irgendwelche Vorkenntnisse wirst du doch haben oder solltest sie zumindest haben. Das Definieren einer Variable dürfte so ziemlich das Erste sein was man lernt. Das offizielle
Tutorial sollte dir da weiterhelfen.
Re: komme nicht weiter
Verfasst: Donnerstag 21. April 2022, 11:53
von __deets__
Das macht man mit den string-Methoden von Python. Siehe zB hier:
https://www.codecademy.com/learn/learn- ... cheatsheet
Hausaufgaben auf Bestellung liefern wir hier nicht. Siehe den entsprechenden Hinweis in "An Schueler und Studenten".
Re: komme nicht weiter
Verfasst: Donnerstag 28. April 2022, 13:02
von ADDI Bos
Wenn Du nicht weiter kommst probiere es hiermit:
text=" das ist ein toller text?"
text=text.strip() #Leerzeichen am anfang Entfernen
text=text.capitalize() #Grßschreiben des Esten Buchstabens
text=text.replace("?","!")
print(text)
Wichtig ist aber dass Du den Code verstehst und nicht nur Copy- Pastest.
Re: komme nicht weiter
Verfasst: Donnerstag 28. April 2022, 16:23
von imonbln
ADDI Bos hat geschrieben: Donnerstag 28. April 2022, 13:02
text=text.strip() #Leerzeichen am anfang Entfernen
Es bringt efgheni nicht weiter, wenn Du die Aufgabe hier im Forum löst, das muss er/sie/es schon selbst können und Versuch & Irrtum ist eine bewährte Lehrstrategie.
Abgesehen davon ist strip() nicht der Befehl der hier gesucht ist, auch wenn es scheinbar funktioniert. Lies Dir mal Dein Kommentar durch und die Beschreibung von strip.
Solltest Du dann Dein Fehler gefunden haben, behalte das Ergebnis für Dich, damit efgheni, das selbst Lernen kann.
Re: komme nicht weiter
Verfasst: Donnerstag 28. April 2022, 16:41
von Sirius3
@imonbln: das hängt auch mit der schlechten Aufgabenbeschreibung zusammen. Da nur am Anfang Leerzeichen im Beispielstring sind, funktioniert strip wie gefordert. Da nur am Ende ein ? ist, funktioniert replace wie gefordert.
`capitalize` hat auch nichts mit der Aufgabenbeschreibung zu tun, oder es ist nicht genau spezifiziert, was man mit GROSS meint?? str.title?
Auf der anderen Seite sollte ein Abgabetermin nach einer Woche ohne Reaktion von efgheni normalerweise schon verstrichen sein.
Re: komme nicht weiter
Verfasst: Samstag 30. April 2022, 15:47
von __blackjack__
Alles mit `re.sub()` lösbar.
Code: Alles auswählen
#!/usr/bin/env python3
import re
def main():
text = " das ist ein toller text?"
for pattern, replacement in [
(r"^ +", ""),
(r"\w", lambda match: match.group().upper()),
(r"\?$", "!"),
]:
text = re.sub(pattern, replacement, text)
print(text)
if __name__ == "__main__":
main()
Kann man auch anpassen falls tatsächlich `capitalize()` oder `title()` gemeint war.
Re: komme nicht weiter
Verfasst: Mittwoch 4. Mai 2022, 09:29
von Onomatopoesie
@BlackJack: Mit deiner Lösung wird der Informatiklehrer in der Schule überfordert sein - ich stelle mir gerade das Gesicht vor.
