Hallo zusammen,
mein Python-Niveau ist okay aber habe gerade Schwierigkeiten ein Paket nachzuvollziehen:
https://github.com/lneuhaus/pyrpl/tree/master/pyrpl
https://pyrpl.readthedocs.io/en/latest/
Das Paket ist schwierig zu verstehen aber ich bin motiviert, es doch zu schaffen. Das Problem ist, dass ich nicht weiß, was ich lernen muss, um das Paket besser zu verstehen. Ich habe schon angefangen Sachen nachzuschlagen und ich versuche Schritt für Schritt die Sachen zu verstehen aber ich habe das Gefühl, dass mir mehr Wissen fehlt und ich weiß nicht was ich genau lesen sollte, um das Paket zu verstehen. Klar kann man alles mögliches vom Paket nachschlagen aber so viel Zeit gibt es nicht. Mein Plan ist das Paket zu benutzen und hoffentlich auch in der Zukunft das Paket weiter zu entwickeln. Ich versuche jetzt nur modules.py, hardware_modues/ und software_modules zu verstehen.
Ich würde mich auf Hilfe freuen. Tipps oder Empfehlungen worüber ich nachlesen sollte, wären ganz nett. Falls jemand Lust hat, bin ich auch daran interessiert, wenn wir das Paket über discord reden können.
Hilfe mit einem Python-Paket
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
die Frage ist ein bisschen strange... du verstehst was nicht, aber wir sollen verstehen, was du nicht verstehst?
Grundsätzlich sollte der Python-Code ja verständlich sein, wenn du
a) alle darin vorkommenden Befehl kennst
b) verstehst, welche Klasse / Funktion was macht
c) nachvollziehen kannst, welche Algorithmen warum verwendet werden
Ich habe gerade nur kurz in den Code geschaut, da wird - zumindest in der Sektion, die ich angeschaut habe - stark mit Nebenläufigkeit gearbeitet. Also solltest du die Konzepte von Python zur Nebenläufigkeit auch verstanden haben.
Insgesamt ist das PyRPL. aber sicherlich kein einfacher Stoff. Sprich: du wirst Zeit brauchen. Selbst dann, wenn du (sehr) gut Python könntest.
Gruß, noisefloor
die Frage ist ein bisschen strange... du verstehst was nicht, aber wir sollen verstehen, was du nicht verstehst?
Grundsätzlich sollte der Python-Code ja verständlich sein, wenn du
a) alle darin vorkommenden Befehl kennst
b) verstehst, welche Klasse / Funktion was macht
c) nachvollziehen kannst, welche Algorithmen warum verwendet werden
Ich habe gerade nur kurz in den Code geschaut, da wird - zumindest in der Sektion, die ich angeschaut habe - stark mit Nebenläufigkeit gearbeitet. Also solltest du die Konzepte von Python zur Nebenläufigkeit auch verstanden haben.
Insgesamt ist das PyRPL. aber sicherlich kein einfacher Stoff. Sprich: du wirst Zeit brauchen. Selbst dann, wenn du (sehr) gut Python könntest.
Gruß, noisefloor
@pyhill00: naja, wenn man die Funktionsweise eines Codes verstehen will, ist es schon nützlich, zu verstehen, was der Code eigentlich machen soll. Sonst bleibt das alles sehr abstrakt.
Was verstehst Du denn konkret nicht?
Allgemein, nimm die Python-Dokumentation und lies die Stellen nach, wo Stichworte vorkommen, die Du im Code nicht verstehst.
Was verstehst Du denn konkret nicht?
Allgemein, nimm die Python-Dokumentation und lies die Stellen nach, wo Stichworte vorkommen, die Du im Code nicht verstehst.
Zu verstehen WARUM eine Software etwas macht, hilft durchaus. Ansonsten ist das halt eine komplexe (und ungewöhnlich gut geschriebene) Qt Anwendung. Also schau dir PyQt an. Und Qt. Denn ersteres versteht man nur durch letzteres.
Danke. Das ist im wesentlichen was ich wissen wollte. Ich weiß nicht, was ich gerade nicht weiß und du hast den Code kurz angeschaut und hast gewusst, dass man Nebenläufigkeit verstehen muss. Kannst du andere Themen empfehlen? Und deinem letzten Satz: kannst du irgendwelche Bücher oder Webseite empfehlen, die man eine sehr gute Python-Kenntnis bekommen kann? Wie gesagt, mein Niveau ist okay und muss halt mehr in die Tiefe gehen.noisefloor hat geschrieben: ↑Donnerstag 21. März 2019, 07:42
Also solltest du die Konzepte von Python zur Nebenläufigkeit auch verstanden haben.
Insgesamt ist das PyRPL. aber sicherlich kein einfacher Stoff. Sprich: du wirst Zeit brauchen. Selbst dann, wenn du (sehr) gut Python könntest.
Der Code hat mit Digitalem Signalprozessor zu tun und der kann für Quantenphysik-Experimente benutzt werden aber an sich hat pyrpl nichts mit Quantenphysik zu tun. So ja man sollte verstehen wie zB ein PID (proportional–integral–derivative controller) oder ein Oszilloskop funktionieren.Sirius3 hat geschrieben: ↑Donnerstag 21. März 2019, 07:56 @pyhill00: naja, wenn man die Funktionsweise eines Codes verstehen will, ist es schon nützlich, zu verstehen, was der Code eigentlich machen soll. Sonst bleibt das alles sehr abstrakt.
Was verstehst Du denn konkret nicht?
Allgemein, nimm die Python-Dokumentation und lies die Stellen nach, wo Stichworte vorkommen, die Du im Code nicht verstehst.
Die Dokumentation habe ich schon gelesen. Konkret: Ich verstehe nicht wie alles zusammenhängt und wofür manche Klassen nötig sind und was sie überhaupt machen wenn zB eine Parentklasse Qtcore ist.
Ja ich lese die schon durch. Ich finde der Code auch gut geschrieben. Hast du andere Empfehlungen?
- __blackjack__
- User
- Beiträge: 13103
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@pyhill00: „Wie alles zusammenhängt“ ist keine konkrete Frage. Und eine Elternklasse `QtCore` wird es wohl nirgends geben, denn soweit ich weiss gibt es keine solche Klasse. Es gibt ein Modul mit dem Namen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
- __blackjack__
- User
- Beiträge: 13103
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@pyhill00: Eben, nur ein allgemeines Beispiel und keine konkrete Frage die man konkret beantworten könnte. Denn bei `QObject` kann man halt auch nur so allgemein antworten, dass man davon erbt, weil man etwas vom Verhalten davon in einem abgeleiteten Typ benötigt.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
- __blackjack__
- User
- Beiträge: 13103
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@pyhill00: Okay, habe ich gemacht. Es bleibt dabei: ohne konkretere Fragen, kann man halt keine konkreteren Antworten geben. Wenn Du das komplett verstehen willst, musst Du Dir die Zeit nehmen alles nachzuschlagen was Du nicht verstehst. Ich wüsste nicht wie man das abkürzen kann. Weder Du selbst, noch wir, ohne zu wissen was die *konkreten* Fragen sind, die sich Dir da stellen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman