Frage zu sequence

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
ppp
User
Beiträge: 13
Registriert: Samstag 24. September 2016, 08:11

Hallo,
ich will eine Challenge lösen. Es gibt eine Funktion:

Code: Alles auswählen

def myfoo(sequence: str):
Laut Aufgabenbeschreibung ist str ein String. Leider kann ich mit str nichts anfangen:

Code: Alles auswählen

print(type(str))
Ergebnis: <class 'type'>

Code: Alles auswählen

print(len(str))
Ergebnis: TypeError: object of type 'type' has no len()

Ich kann mit str nicht viel anfangen.
Kann mir jemand einen Tip geben, wie ich mit str arbeiten kann?
Sirius3
User
Beiträge: 17754
Registriert: Sonntag 21. Oktober 2012, 17:20

Du hast eine `squence`. Warum das ein String sein soll, ist verwirrend, weil man unter einer Sequenz normalerweise etwas anderes (allgemeineres) versteht.
Benutzeravatar
DeaD_EyE
User
Beiträge: 1021
Registriert: Sonntag 19. September 2010, 13:45
Wohnort: Hagen
Kontaktdaten:

Strings sind auch Sequenzen.

https://docs.python.org/3/library/stdty ... quence#str

Code: Alles auswählen

>>> isinstance("Hello", typing.Sequence)
True
Die Funktionsdefinition

Code: Alles auswählen

def myfoo(sequence: str):
erwartet ein Argument, dass ein str sein sollte. Es handelt sich um Type Annotations.

Für Anfänger reicht das hier:

Code: Alles auswählen

def myfoo(sequence):
Innerhalb der Funktion arbeitet man dann mit dem Namen sequence, das laut Vorgabe ein str, also Text sein soll.
sourceserver.info - sourceserver.info/wiki/ - ausgestorbener Support für HL2-Server
ppp
User
Beiträge: 13
Registriert: Samstag 24. September 2016, 08:11

OK. Danke. Konnte die Challenge lösen.
Antworten