Hallo,
ich will mit int(get.label) Eine Zahl aus einem Label holen und diese Zahl dann mit einer anderen Zahl vergleichen.
Aber aus irgendeinem Grund bekomm ich dann immer die Fehlermeldung, dass der String nicht umwandelbar ist.
In einem anderen Teil meines Codes hat das Problemlos funktioniert, deswegen verstehe ich es nicht.
Mit freundlichen Grüßen
Kann String nicht in Int ändern
@Manuel22
Du machst bestimmt etwas falsch. Die Lösung ist, deinen Code so zu ändern, dass dein Programm wie gewünscht funktioniert.
Das war jetzt in etwa das Niveau der Fragestellung (die streng genommen nicht mal eine Frage beinhaltet hat). Vielleicht merkst du ja was...
Du machst bestimmt etwas falsch. Die Lösung ist, deinen Code so zu ändern, dass dein Programm wie gewünscht funktioniert.
Das war jetzt in etwa das Niveau der Fragestellung (die streng genommen nicht mal eine Frage beinhaltet hat). Vielleicht merkst du ja was...
@darktrym: Welcher Funktionsaufruf? Beim `int()` waren sie doch da und das ``get.label`` ist sicher nicht das was tatsächlich im Programm steht oder stand, denn ein Objekt `get` mit einem `label`-Attribut? Das glaube/hoffe ich ja nicht.
@Manuel22: Wieso willst Du überhaupt Daten aus einem Label holen? Die sind zum Anzeigen da und nicht um Daten darin zu speichern. Die notwendigen Daten sollten getrennt von der GUI in der Programmlogik hinterlegt werden.
@Manuel22: Wieso willst Du überhaupt Daten aus einem Label holen? Die sind zum Anzeigen da und nicht um Daten darin zu speichern. Die notwendigen Daten sollten getrennt von der GUI in der Programmlogik hinterlegt werden.
@blackjack du hast völlig recht danke:)
War einfach nur zur verdeutlichung.
Okay, ich kommuniziere in meinem code zwischen threads und hatte damit bisschen Probleme und da ich die Zahlen eh anzeigen lassen will hole ich sie mir eben in einem anderen threds indem ich damit weiterarbeiten will wieder raus. Das funktioniert auch bei einer Zahl perfekt nur eben bei der 2. Zahl nicht...
Vielleicht weil die erste zahl ohne Komma ist und die 2. Eine Kommastelle hat.
Oder sollte ich lieber mit queues arbeiten?
War einfach nur zur verdeutlichung.
Okay, ich kommuniziere in meinem code zwischen threads und hatte damit bisschen Probleme und da ich die Zahlen eh anzeigen lassen will hole ich sie mir eben in einem anderen threds indem ich damit weiterarbeiten will wieder raus. Das funktioniert auch bei einer Zahl perfekt nur eben bei der 2. Zahl nicht...
Vielleicht weil die erste zahl ohne Komma ist und die 2. Eine Kommastelle hat.
Oder sollte ich lieber mit queues arbeiten?
@Manuel22: Du versuchst also eine Zeichenkette die Zeichen enthält die nicht zu einer ganzen Zahl gehören in eine ganze Zahl umzuwandeln. Das ist doch irgendwie logisch dass das so nicht gehen kann. Und ist ein schönes Beispiel warum man Daten die man schon mal als richtigen Typen vorliegen hatte nicht über die Anzeige in eine Zeichenkette und von dort dann wieder in den gewünschten Typ wandeln sollte.
Also tut mir leid ich muss jetzt leider mal was loswerden!!!!!
Ist ja möglich dass uch mich schlecht artikuliere oder unverständlich schreibe oder von mir aus auch keine Frage stelle aber was sollen diese ganzen schwachsinigen Kommentare????
Ich weiß ja nicht aber kommt mir so vor als ob blackjack der einzige ist der hier helfen will und siehe da er versteht es auch!!
Also entweder schreibt bitte etwas hilfreiches oder überlest den Beitrag einfach!!!!!
Finde ich unnötig unqualifizierte Kommentare über Neulinge abzulassen.
Kann jetzt auch gerne rausgeschmissen werden oder sonst was aber siwas finde ich nicht in Ordnung!!!!!
Danke für die Aufmerksamkeit!
In dem oben stehenden Beitrag wurde keine Frage gestellt. Für Irrtümer trage ich keine Haftung.
Ist ja möglich dass uch mich schlecht artikuliere oder unverständlich schreibe oder von mir aus auch keine Frage stelle aber was sollen diese ganzen schwachsinigen Kommentare????
Ich weiß ja nicht aber kommt mir so vor als ob blackjack der einzige ist der hier helfen will und siehe da er versteht es auch!!
Also entweder schreibt bitte etwas hilfreiches oder überlest den Beitrag einfach!!!!!
Finde ich unnötig unqualifizierte Kommentare über Neulinge abzulassen.
Kann jetzt auch gerne rausgeschmissen werden oder sonst was aber siwas finde ich nicht in Ordnung!!!!!
Danke für die Aufmerksamkeit!
In dem oben stehenden Beitrag wurde keine Frage gestellt. Für Irrtümer trage ich keine Haftung.
Moin Manuel,
wie von BlackJack schon erwähnt, hast du versucht deine Zeichenkette in eine Zahl umzuwandeln. Das hat so nicht funktioniert, da der Typ Integer nur für ganze Zahlen zuständig ist. Da es sich hierbei allerdings um eine Komma-Zahl handelt, macht das keinen Sinn mehr.
Um einen string in eine Gleitkommazahl umzuwandeln verwende doch den Datentyp float.
>>> a = "545.2222"
>>> float(a)
545.22220000000004
>>> int(float(a))
545
wie von BlackJack schon erwähnt, hast du versucht deine Zeichenkette in eine Zahl umzuwandeln. Das hat so nicht funktioniert, da der Typ Integer nur für ganze Zahlen zuständig ist. Da es sich hierbei allerdings um eine Komma-Zahl handelt, macht das keinen Sinn mehr.
Um einen string in eine Gleitkommazahl umzuwandeln verwende doch den Datentyp float.
>>> a = "545.2222"
>>> float(a)
545.22220000000004
>>> int(float(a))
545
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Das ist genau der Punkt: Wenn du keine Frage stellst, kann man keine Frage beantworten.Manuel22 hat geschrieben:In dem oben stehenden Beitrag wurde keine Frage gestellt.
Wenn du keinen Code lieferst, kann man nicht sagen wo und warum er nicht funktioniert.
Wenn du nur vage Konzepte herumwirfst und Informationsbrocken, kann man dir auch nur mit Platitueden und Gerate "helfen".
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
Täusche ich mich? Oder mehren sich Threads von denen, die Hilfe erwarten, diese aber dann nicht hören wollen? Oder ist das einfach gerade nur die Vorweihnachts-Super-Empfindsam-Zeit?
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit )
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
@Manuell22: Ich denke hier wollen wirklich viele helfen - aber dazu braucht man eben auch genügend Information! Es mag sein, dass die ersten Antworten auf Dich wenig hilfsbereit wirken, aber da täuschst Du Dich! Schau Dir Dein erstes Posting noch einmal genau an und versuche Dich in Menschen hinein zu versetzen, die weder Deinen Code noch den Kontext (was ist denn ein ``label`` für ein Typ?) kennen. Da wirst Du hoffentlich einsehen, dass die Infos einfach zu wenig waren! Wichtig wäre offenbar gewesen, *wie* der String aussieht, der nicht wandelbar ist. Hätten wir die *exakte* Fehlermeldung mit dem Wert des Strings sofort gezeigt bekommen, hättest Du mit nahezu 100% Gewissheit bereits in der ersten Antwort einen Hinweis darauf bekommen, dass das eben kein Integerwert im String ist, sondern ein Fließkommawert und man den entsprechend *anders* (``float()``) parsen muss.
Ich denke Du solltest einen Gang zurück schalten und die Schuld für Metadiskussionen nicht bei anderen suchen, sondern bei Dir
So, und nun herrscht hier gefälligst wieder Harmonie, sonst lege ich Wham auf...
Ich denke Du solltest einen Gang zurück schalten und die Schuld für Metadiskussionen nicht bei anderen suchen, sondern bei Dir
So, und nun herrscht hier gefälligst wieder Harmonie, sonst lege ich Wham auf...
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert