Benutzer-Werkzeuge

Webseiten-Werkzeuge


python

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
python [2024-07-26 14:46:18] manfredpython [2024-07-28 10:02:24] (aktuell) – [venv] david
Zeile 7: Zeile 7:
   2017: Instagram wechselte zu 100% auf Python 3.5   2017: Instagram wechselte zu 100% auf Python 3.5
   2020: seit 01. Jan. 2020 gibt es keinen Support für Python-2 mehr   2020: seit 01. Jan. 2020 gibt es keinen Support für Python-2 mehr
 +
 +
 +===== venv =====
 +
 +  * es wird stark empfohlen, venv in python zu nutzen
 +  * um pakete mit pip global zu installieren ist venv jedoch unpraktisch, dafür gibt es pipx, welches ein separates venv für das jeweilige paket managed, d.h.
 +    * ''pipx install'': pakete installieren
 +    * ''pip install'' (innerhalb venv): abhängigkeiten für ein projekt in einem venv installieren (abhängigkeiten stehen üblicherweise in einer ''requirements.txt'' datei)
 +    * ''pip install'' (außerhalb venv): vermeiden wenn möglich
 +
 +relevante python pakete in debian
 +
 +<code bash>
 +sudo apt install python-is-python3 python3 python3-pip python3-venv pipx
 +</code>
 +
 +paket mit pipx installieren
 +(black ist übrigens ein super python formatter, es ist sowas wie das gofmt von python)
 +
 +<code bash>
 +pipx install black
 +</code>
 +
 +venv erstellen
 +
 +<code bash>
 +mkdir /tmp/python-venv-demo
 +cd /tmp/python-venv-demo
 +
 +type python
 +
 +python -m venv .venv
 +. .venv/bin/activate
 +
 +type python
 +
 +touch requirements.txt
 +pip install -r requirements.txt
 +python -c 'print("hello world")'
 +
 +deactivate
 +
 +type python
 +</code>
 +
 +
 +===== best practices =====
 +
 +sicherstellen, dass der main code nur ausgeführt wird, wenn die datei als programm ausgeführt wird, nicht wenn sie als modul importiert wird (das macht der ''%%__name__ == "__main__"%%'' check)
 +
 +<code python main.py>
 +#!/usr/bin/env python3
 +
 +def main():
 +    print("Hello World!")
 +
 +if __name__ == "__main__":
 +    main()
 +</code>
  
  
Zeile 598: Zeile 657:
 ==== Pins schalten ==== ==== Pins schalten ====
  
-//Das ist nur ein Code-Schnipsel!//+//Das ist nur ein Code-Schnipsel, an dem zu erkennen ist, dass die Pin-Steuerung beim Pi 5 jetzt anders erfolgt als es beim Pi4 war.//
  
 <code python> <code python>
/home/http/wiki/data/attic/python.1722005178.txt · Zuletzt geändert: von manfred