12 Python-Bibliotheken, die jeder kennen sollte
Produktive und nützliche Liste von Python-Bibliotheken
Es gibt einige hinterhältige Python-Bibliotheken, die nur wenige Menschen kennen. Diese Bibliotheken sind wirklich beeindruckend, wenn es darum geht, Ihre tägliche Produktivität zu verbessern.
1- Beginnt
Die Pip-Installation beginnt
Was die Benutzeroberflächen betrifft, so beginnen die meisten Python-Programme als
Befehlszeilenanwendungen, und viele bleiben es auch. Es ist sinnvoll,
Ihren Benutzern das bestmögliche Erlebnis zu bieten. Für solche Programme werden Optionen mit Befehlszeilenargumenten angegeben, und die
Python-Standardbibliothek bietet die argparse-Bibliothek, um dabei zu helfen.
argparse ist eine robuste, solide Implementierung für die Befehlszeilenverarbeitung
, deren Verwendung jedoch etwas ausführlich ist. Hier haben wir zum Beispiel ein äußerst einfaches Skript, das zwei auf der Befehlszeile
übergebene Zahlen hinzufügt :
import begin
@begin.start(auto_convert=True)
def main(a: 'First value' = 0.0, b: 'Second value' = 0.0):
""" Add two numbers """
print(a + b)
pip install colorama
Viele Ihrer Desktop-Python-Programme werden immer nur über die Befehlszeile verwendet . Daher ist es sinnvoll, alles zu tun, um
die Erfahrung Ihrer Benutzer so weit wie möglich zu verbessern. Die Verwendung
von Farbe kann Ihre Benutzeroberfläche erheblich verbessern, und Colorama
macht es sehr einfach, Farbtupfer in Ihre Befehlszeilenanwendungen einzufügen
.
from colorama import init, Fore, Back, Style
init(autoreset=True)
messages = ['blah blah blah',(Fore.LIGHTYELLOW_EX + Style.BRIGHT
+ BACK.MAGENTA + 'Alert!!!'),'blah blah blah']
for m in messages:
print(m)
pip install pyqtgraph
python -m pyqtgraph.examples
Die beliebteste Bibliothek zum Zeichnen von Diagrammen in Python ist matplotlib, aber
Sie haben vielleicht noch nicht von der wunderbaren Alternative pyqtgraph gehört.
Pyqtgraph ist kein Eins-zu-eins-Ersatz für Matplotlib; Vielmehr
bietet es eine andere Auswahl an Funktionen und eignet sich insbesondere hervorragend
für die Echtzeit- und interaktive Visualisierung.
4. pywebview
Pywebview bietet Ihnen einen einzeiligen Befehl zum
Erstellen eines GUI-Fensters, das ein systemeigenes „Webansicht“-Fenster umschließt.
Durch die Kombination mit einer Python-Webanwendung wie Flask oder Bottle
wird es sehr einfach, eine lokale Anwendung mit einer GUI zu erstellen und
gleichzeitig die neuesten GUI-Technologien zu nutzen, die
im Browserbereich entwickelt wurden. Der Vorteil der Verwendung des systemeigenen
Browser-Widgets besteht darin, dass Sie kein potenziell großes Anwendungspaket an Ihre Benutzer verteilen müssen.
5. psutil
Psutil bietet vollständigen Zugriff auf Systeminformationen. Hier ist ein einfaches
Beispiel für einen Basisbericht zur CPU-Auslastung, der über einen Zeitraum von 5 Sekunden erfasst wurde:
import psutil
cpu = psutil.cpu_percent(interval=5, percpu=True)
print(cpu)
Watchdog ist eine hochwertige, plattformübergreifende Bibliothek zum Empfangen von Benachrichtigungen über Änderungen im Dateisystem. Solche Dateisystembenachrichtigungen
sind in vielen Automatisierungsanwendungen eine Grundvoraussetzung, und
Watchdog verarbeitet alle Low-Level- und plattformübergreifenden Details von
Benachrichtigungen für Systemereignisse. Und das Tolle an Watchdog
ist, dass es keine Abfragen verwendet
7. ptpython
ptpython ist eine alternative Interpreterschnittstelle, die ein schönes
interaktives Python-Erlebnis bietet. Daher ist ptpython eher ein Werkzeug
als eine Bibliothek, die Sie in Ihre eigenen Projekte einbinden können, aber was für ein Werkzeug! mit Basisschnittstelle
8. Pfeile
Obwohl die Meinungen unterschiedlich sind, gibt es einige, die die Verwendung des Datetime-Moduls der Standardbibliothek als verwirrend empfinden. Die Moduldokumentation selbst erklärt in den ersten Absätzen, warum: Sie stellt
sowohl naive als auch bewusste Objekte zur Darstellung von Datums- und Uhrzeitangaben bereit. Die Naiven
sorgen für Verwirrung, denn Anwendungsentwickler
arbeiten zunehmend an Projekten, bei denen Zeitzonen
von entscheidender Bedeutung sind. Der dramatische Aufstieg von Cloud-Infrastrukturen und Software-as-a-Service-Anwendungen hat dazu beigetragen,
dass Ihre Anwendung häufig in einer anderen Zeitzone
(z. B. auf einem Server) als dem Standort der Entwickler und wiederum einem anderen Standort ausgeführt wird Ihre Benutzer befinden sich.
import arrow
t0 = arrow.now()
print(t0)
t1 = arrow.utcnow()
print(t1)
difference = (t0 - t1).total_seconds()
print('Total difference: %.2f seconds' % difference)
parsedatetime ist eine wunderbare Bibliothek mit einem speziellen Schwerpunkt: dem Parsen von Text in Datums- und Uhrzeitangaben. Wie zu erwarten, kann es
mit pip install parsedatetime abgerufen werden. Die offizielle Dokumentation ist
sehr API-ähnlich, was es schwieriger macht, sich einen schnellen
Überblick über die Angebote der Bibliothek zu verschaffen, aber Sie können sich einen ziemlich guten
Überblick über das Angebot verschaffen, indem Sie die umfangreiche Testsuite durchsuchen.
import parsedatetime as pdt
cal = pdt.Calendar()
examples = [
"2016-07-16",
"2016/07/16",
"2016-7-16",
"2016/7/16",
"07-16-2016",
"7-16-2016",
"7-16-16",
"7/16/16",
]
print('{:30s}{:>30s}'.format('Input', 'Result'))
print('=' * 60)
for e in examples:
dt, result = cal.parseDT(e)
print('{:<30s}{:>30}'.format('"' + e + '"', dt.ctime()))
Das Interesse an der Erstellung von Bots und anderen Überwachungs- und Automatisierungsanwendungen nimmt zu.
Bei diesen Anwendungen besteht eine häufige Anforderung darin, Aktionen zu bestimmten Zeiten oder in bestimmten Intervallen durchzuführen . Diese Funktionalität wird vom Modul sched in der Standardbibliothek bereitgestellt. Es gibt bereits ähnliche Tools, die
von Betriebssystemen bereitgestellt werden, wie z. B. cron unter Linux und Windows Task
Scheduler, aber mit Pythons eigenem Sched-Modul können Sie
diese Plattformunterschiede ignorieren und geplante Aufgaben
in ein Programm integrieren, das möglicherweise viele andere Funktionen hat.
import sched
import time
from datetime import datetime, timedelta
scheduler = sched.scheduler(timefunc=time.time)
def saytime():
print(time.ctime())
scheduler.enter(10, priority=0, action=saytime)
saytime()
try:
scheduler.run(blocking=True)
except KeyboardInterrupt:
print('Stopped.')
pip install flit
flit ist ein Tool, das den Prozess der Übermittlung eines Python-Pakets an den Python Package Index (PyPI) erheblich vereinfacht
. Der herkömmliche
Prozess beginnt mit der Erstellung einer setup.py-Datei; Einfach herauszufinden, wie
man das macht, erfordert schon eine beträchtliche Menge an Arbeit, um zu verstehen,
was zu tun ist. Im Gegensatz dazu erstellt flit seine Konfigurationsdatei interaktiv, und für typische einfache Pakete können Sie sie fast sofort auf PyPI hochladen
.
12. Boltons
Die Boltons-Bibliothek ist eine universelle Sammlung von Python-Modulen
, die ein breites Spektrum an Situationen abdeckt, denen Sie begegnen können. Die
Bibliothek ist gepflegt und hochwertig; Es lohnt sich auf jeden Fall, es zu
Ihrem Toolset hinzuzufügen.
12. Cython
Cython ist ein magisches Werkzeug! Wie bei den meisten magischen Geräten ist es schwierig,
genau zu beschreiben, um was es sich handelt. Cython ist ein Tool, das Python-Quellcode in C-Quellcode konvertiert. Dieser neue Code wird dann in
eine native Binärdatei kompiliert, die mit der CPython-Laufzeit verknüpft ist.
13. Awesome-Python
Endlich haben wir awesome-python. Es handelt sich nicht um eine Bibliothek, sondern um eine
riesige, kuratierte Liste hochwertiger Python-Bibliotheken, die eine große
Anzahl von Domänen abdecken. Wenn Sie diese Liste noch nie gesehen haben, sollten Sie sich unbedingt
etwas Zeit nehmen, bevor Sie sie durchstöbern, denn wenn Sie einmal angefangen haben, wird es Ihnen
schwerfallen, sich loszureißen!

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































