Hallo,
ich würde gerne dieses "singalR" Modul in python 3.4 nutzen, muss es also übersetzen:
https://github.com/slazarov/python-sign ... t/issues/1
Dort könnt ihr auch sehen, wie ich die anderen async und await Begriffe bereits ersetzt habe.
Nur bei "async for" weiß ich nicht, wie ich das sinnvoll ersetze für python 3.4.
Google liefert lieder nur ein Ergebnis:
https://stackoverflow.com/questions/343 ... python-3-4
Soweit ich die antwort verstehe, soll das letzte Beispiel von "nitely" die gesuchte Antwort sein? Doch wie genau ersetzt dieser Code nun das Beispiel des Fragestellers? Beim Fragesteller kommen ja Platzhalter wie "TARGET", "ITER" und "BLOCK" vor, doch in der Lösungsantwort stehen diese nicht, weshalb ich nicht weiß wie das nun angewendet wird.
Und ja, ich würde gerne bei pthon 3.4 bleiben.
"Async for" in python 3.4?
- noisefloor
- User
- Beiträge: 4178
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
asyncio ist IMHO erst ab Python 3.5 "richtig" nutzbar. Erst ab 3.5 sind alle Konzepte, die die Python-Entwickler für asyncio umsetzen wollten, auch vollständig umgesetzt. Python 3.4 hat nur eine "Vorstufe" von asyncio an Bord.
Meine Meinung: wenn du asyncio nutzen willst, dann nimm Python >= 3.5. Bei 3.4 hast du zu viele Einschränkungen und brauchst zu viele Work-Arounds.
Warum willst du eigentlich bei 3.4 bleiben?
Gruß, noisefloor
asyncio ist IMHO erst ab Python 3.5 "richtig" nutzbar. Erst ab 3.5 sind alle Konzepte, die die Python-Entwickler für asyncio umsetzen wollten, auch vollständig umgesetzt. Python 3.4 hat nur eine "Vorstufe" von asyncio an Bord.
Meine Meinung: wenn du asyncio nutzen willst, dann nimm Python >= 3.5. Bei 3.4 hast du zu viele Einschränkungen und brauchst zu viele Work-Arounds.
Warum willst du eigentlich bei 3.4 bleiben?
Gruß, noisefloor
ich hab zuviele schlechte Erfahrungen mit Python Versionen gemacht.noisefloor hat geschrieben:Hallo,
asyncio ist IMHO erst ab Python 3.5 "richtig" nutzbar. Erst ab 3.5 sind alle Konzepte, die die Python-Entwickler für asyncio umsetzen wollten, auch vollständig umgesetzt. Python 3.4 hat nur eine "Vorstufe" von asyncio an Bord.
Meine Meinung: wenn du asyncio nutzen willst, dann nimm Python >= 3.5. Bei 3.4 hast du zu viele Einschränkungen und brauchst zu viele Work-Arounds.
Warum willst du eigentlich bei 3.4 bleiben?
Gruß, noisefloor
Ich weiß grad nicht mehr welche genau, aber es gibt auch einige Dinge die in python 3.4 funktionieren und in python 3.5 oder höher nicht mehr oder anders funktionieren.
Und da mein ganzes Projekt mit 3.4 geschrieben wurde und ich selbst nicht ohne stundenlanges nachforschen weiß, was ich alles anpassen müsste, will ich nicht riskieren, dass mein Projekt dann nicht mehr läuft bzw noch schlimmer ohne mein Wissen plötzlich etwas anders als ich es gewohnt bin ausgeführt wird und es dadurch zu unbemerkten Fehlern kommt.
@Serpens66: Innerhalb einer Major-Version ist Python größtenteils aufwärtskompatibel, und in begründeten Fällen wird ein Kompatibilitätsbruch mehrere Versionen im Voraus angekündigt. Dazu gibt es What’s New in Python, insbesondere Porting to Python x.y.
Um zu überprüfen, dass eine Änderung nicht irgendwo zu unerwartetem Verhalten führt, schreibt man im besten Fall Unittests. Wenn man das nicht macht, hat man dann halt ein Problem.
Um zu überprüfen, dass eine Änderung nicht irgendwo zu unerwartetem Verhalten führt, schreibt man im besten Fall Unittests. Wenn man das nicht macht, hat man dann halt ein Problem.