Moin,
eins vorab. VisualStudio hab ich erst seit 2 Wochen und bin trotz diverse Youtube und andere Anleitungen nicht weitergekommen.
Ich habe auf ein Debian-System ein Projekt installiert. Mittels:
git clone https://github.com/.....
Das ganze per SMB freigegeben und als Netzwerklaufwerk unter Z gemappt.
Das klappt soweit auch. Entsprechende Datein werden geöffnet und bearbeitet.
Dumm nur, dass viele python-Datein immer mit einen import beginnen.
VisualStudio schmeißt so unendlich viele gelbe Meldungen... die ich etwas störend empfinde. Vermutlich gehen mir so auch recht viele Zusatzfunktionen von VisualStudio flöten.
Nun die Frage:
In VisualStudio hab ich schon verschiedene Möglichkeiten versucht diesen Bestandscode in Summe einzulesen bzw. in ein Projekt zu importieren.
An einigen Stellen bin ich zwar weitergekommen, sodass ich rechts den Verzeichnisbaum mit allen Datein bekommen habe... aber die vielen gelben Fehler blieben immer.
Wie fange ich es denn an um diesen Bestandscode nun in VisualStudio 2022 einzubinden.
Und zwar so, dass VisualStudio von allen "import" befehlen Kenntnis hat und keine Warnungen mehr auswirft?
Frage 2:
Woran erkenne ich denn die "startdatei" eines Python-Projekts?
Da ich PHP-Entwickler bin, weiß ich, dass es mit der index.php (im normalfalle) immer beginnt.
Und in Python?
Habt Dank
VisualStudio: Bestehenden Code als Projekt einlesen
Mit Netzwerklaufwerken arbeiten ist eine schlechte Idee. Die haben die Tendenz tools zu zerbrechen. ZB git: https://www.reddit.com/r/git/comments/q ... _over_smb/
Zu deinem beschriebenen Problem: ueblicherweise legt man in Python ein sogenanntes virtualenv an, eine isolierte Umgebung mit allen abhaengigen Paketen. Das sollte auch VS Code koennen bzw verstehen, und damit kannst du dann zumindest die Pakete, die Abhaengigkeiten darstellen, handhaben.
Dann muss man das eigene Projekt da auch noch reinhieven. Das kann sein, dass VS Studio das schon macht (durch das root-Verzeichnis, oder ein src-Verzeichnis, das man angeben kann/muss). Noch besser (und ggf. eine Antwort auf die zweite Frage): man benutzt ein setup.py des Projektes, und den Aufruf "python setup.py develop" (python muss hier das venv-Python sein), damit man dann sowohl die Pakete des Projektes, als auch console-entrypoints installiert bekommt. Ob das so klappt, haengt natuerlich vom konkreten Projekt ab. Was auch die Frage beantwortet - das bestimmt das Projekt eben selbst, es gibt da keine fixen Regeln, nur best practices. Da hat PHP es als single-purpose-Sprache einfacher. index.php braucht man eben immer.
Zu deinem beschriebenen Problem: ueblicherweise legt man in Python ein sogenanntes virtualenv an, eine isolierte Umgebung mit allen abhaengigen Paketen. Das sollte auch VS Code koennen bzw verstehen, und damit kannst du dann zumindest die Pakete, die Abhaengigkeiten darstellen, handhaben.
Dann muss man das eigene Projekt da auch noch reinhieven. Das kann sein, dass VS Studio das schon macht (durch das root-Verzeichnis, oder ein src-Verzeichnis, das man angeben kann/muss). Noch besser (und ggf. eine Antwort auf die zweite Frage): man benutzt ein setup.py des Projektes, und den Aufruf "python setup.py develop" (python muss hier das venv-Python sein), damit man dann sowohl die Pakete des Projektes, als auch console-entrypoints installiert bekommt. Ob das so klappt, haengt natuerlich vom konkreten Projekt ab. Was auch die Frage beantwortet - das bestimmt das Projekt eben selbst, es gibt da keine fixen Regeln, nur best practices. Da hat PHP es als single-purpose-Sprache einfacher. index.php braucht man eben immer.
https://code.visualstudio.com/docs/python/environments
Also dokumentiert ist da was... aber aufgrund von lokal nicht vorhandener IDE kann ich derzeit und hier nur mit Links um mich werfen.... mir reichen bisher ein Editor und die Kommandozeile
Aber irgendwie überlege ich gerade ob ich mir mal eine IDE hier installiere
Also dokumentiert ist da was... aber aufgrund von lokal nicht vorhandener IDE kann ich derzeit und hier nur mit Links um mich werfen.... mir reichen bisher ein Editor und die Kommandozeile
Aber irgendwie überlege ich gerade ob ich mir mal eine IDE hier installiere
_______________________________________________________________________________
https://www.python-kurs.eu/index.php
https://learnxinyminutes.com/docs/python/ https://learnxinyminutes.com/docs/de-de/python-de/
https://quickref.me/python https://docs.python-guide.org/
Visual Studio ist es
Linux hab ich nur auf CLI. Win-Emulation fällt somit weg. bzw. wird in Summe alles zu kompliziert.
Ich hatte sowas erhofft wie eine Art Wizard, der mich Fragt: "Bestandscode oder neues Projekt". Beim Bestand ließt er dann alle Ordner rekursiv ein und hat somit Kenntnis von allen IMPORT-Befehlen. Aber so was in der Gegend finde ich halt nicht.
Damit werde ich wohl leben müssen. Das Python-Script ist auf Linux. VisualStudio für Windows.__deets__ hat geschrieben: Montag 27. März 2023, 13:57 Mit Netzwerklaufwerken arbeiten ist eine schlechte Idee. Die haben die Tendenz tools zu zerbrechen. ZB git: https://www.reddit.com/r/git/comments/q ... _over_smb/
Linux hab ich nur auf CLI. Win-Emulation fällt somit weg. bzw. wird in Summe alles zu kompliziert.
Das Script läuft ja schon bzw. ist bereits installiert.__deets__ hat geschrieben: Montag 27. März 2023, 13:57 Zu deinem beschriebenen Problem: ueblicherweise legt man in Python ein sogenanntes virtualenv an, eine isolierte Umgebung mit allen abhaengigen Paketen.
Ich hatte sowas erhofft wie eine Art Wizard, der mich Fragt: "Bestandscode oder neues Projekt". Beim Bestand ließt er dann alle Ordner rekursiv ein und hat somit Kenntnis von allen IMPORT-Befehlen. Aber so was in der Gegend finde ich halt nicht.
Nein. Es ist nicht installiert. Nur weil irgendwo über irgendeine Netzwerkverbindung ein Rechner erreichbar ist, auf dem ein System läuft, mit all seinen Abhängigkeiten etc, hat das keine Auswirkung auf deinen Arbeitsrechner. Wenn du auf dem mit dem System arbeiten willst, dann muss es DA installiert und lauffähig gemacht werden. Edit:Das gilt für Python, weil das laufen muss, um aussagen über den Code treffen zu können.lord_icon hat geschrieben: Dienstag 28. März 2023, 06:47 Das Script läuft ja schon bzw. ist bereits installiert.
Ich hatte sowas erhofft wie eine Art Wizard, der mich Fragt: "Bestandscode oder neues Projekt". Beim Bestand ließt er dann alle Ordner rekursiv ein und hat somit Kenntnis von allen IMPORT-Befehlen. Aber so was in der Gegend finde ich halt nicht.
Was dazu notwendig ist, habe ich beschrieben. Wenn du das nicht machen willst, kannst du nur die Assistenten, die deine Importe anmäkeln etc, deaktivieren.
- __blackjack__
- User
- Beiträge: 14057
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@lord_icon: Ich würde auch vom Netzlaufwerk abraten. Es wird erst so richtig kompliziert und nervig wenn dadurch etwas an dem Repo kaputt geht. Die meisten IDEs haben heutzutage Wege etwas lokal zu entwickeln und remote auszuführen, beispielsweise über einen SSH-Zugang, weil das bei Webentwicklung und ”embedded” Kram wie Raspberry Pi & Co eine nicht unübliche Anforderung ist.
Und falls die IDE so etwas nicht direkt kann, lässt sich dann immer noch Git verwenden um lokal zu entwickeln und Änderungen auf eine Zielplattform zu schieben, wo man das beispielsweise mit ``pip`` im ”edit”-Modus installiert hat.
Und falls die IDE so etwas nicht direkt kann, lässt sich dann immer noch Git verwenden um lokal zu entwickeln und Änderungen auf eine Zielplattform zu schieben, wo man das beispielsweise mit ``pip`` im ”edit”-Modus installiert hat.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari