Python-Studiennotizen (CSDN) – 1 – Einführung in Python

Folgen Sie den Kursen zu CSDN, um zu lernen: Einführung in Python – Vorkenntnisse – CSDNPython-Einstieg in den Fähigkeitsbaum 

Hier ist zunächst eine Mindmap dieses Kurses:


Inhaltsverzeichnis

 1.Python-Definition

2 Geschichte der Python-Entwicklung

2.1 Entwicklung von Python

2.2 Python-Versionsaktualisierung

2.3 Der Unterschied zwischen Python2.0 und Python3.0

3 Python-Kompilierungs- und Ausführungsprozess

3.1 Python-Interpreter

3.2 Arten von Python-Interpretern

3.3 Python-Bytecode (.pyc)

3.4 Virtuelle Python-Maschine

4 Python-Anwendungen

5 Funktionen von Python

6 Vorteile von Python


 1.Python-Definition

Python ist eine leicht zu erlernende Skriptsprache, die interpretierte, kompilierte, interaktive und objektorientierte Skripterstellung kombiniert . Python bietet High-Level-Datenstrukturen, seine Syntax, dynamische Typisierung und Interpretierbarkeit machen es zur Programmiersprache der Wahl für Entwickler.

  • Python ist eine interpretierte Sprache:  Es gibt keinen Kompilierungsteil im Entwicklungsprozess. Ähnlich wie die Sprachen PHP und Perl.

  • Python ist eine interaktive Sprache:  Code kann direkt nach einer Python-Eingabeaufforderung >>> ausgeführt werden.

  • Python ist eine objektorientierte Sprache:  Python unterstützt einen objektorientierten Stil oder eine Programmiertechnik, bei der Code in Objekten gekapselt ist.

2 Geschichte der Python-Entwicklung

2.1 Entwicklung von Python

Der Gründer von Python ist Guido van Rossum . Um der Weihnachtslangweile ein Ende zu setzen, beschloss Guido 1989, einen neuen Skriptinterpreter als Erbe der ABC-Sprache zu entwickeln.

2.2 Python-Versionsaktualisierung

 Die neueste Version von Python hat 3.10.6 (2022.8.15) erreicht.

Laden Sie Python | herunter Python.org

2.3 Der Unterschied zwischen Python2.0 und Python3.0

  • Ausgabeaspekt

Python2.0 verwendet das Schlüsselwort print für die Ausgabe, wie zum Beispiel: print „Hello“;

Python3.0 verwendet die Funktion print(), zum Beispiel: print("Hallo").

  • Eingabeaspekt

Python2.0 verwendet die Funktion raw_input(), zum Beispiel: name=raw_input("Bitte geben Sie Ihren Namen ein:");

Python3.0 verwendet die Funktion input(), zum Beispiel: name=input("Bitte geben Sie Ihren Namen ein:").

  • String-Kodierungsformat

Python2.0 verwendet standardmäßig die ASCII-Kodierung, um die Eingabezeichenfolge zu kodieren.

Python3.0 verwendet standardmäßig die Unicode-Codierung zum Codieren von Zeichenfolgen.

  • So formatieren Sie Zeichenfolgen

Python2.0 verwendet %-Platzhalter, um Zeichenfolgen in einem standardisierten Format auszugeben, z. B.: „Hallo, %s“ % („Welt“);

Python3.0 verwendet die Funktion format(), zum Beispiel: „Hallo,{}“.format(“Welt“).

  • Codierungsformat der Quelldatei

Python2.0 verwendet standardmäßig ASCII. Wenn Sie also Chinesisch verwenden, fügen Sie am Anfang der Quelldatei eine Kommentarzeile hinzu: # - - Kodierung: utf-8 - -;

Python3.0 verwendet standardmäßig utf-8.

  • Art der Daten

Python2.0 verfügt über int- und long-Integer-Typen

Python3.0 hat nur den Integer-Typ int

  • Code-Spezifikationen

Der Quellcode von Python 2.0 ist nicht standardisiert und es gibt viele doppelte Codes

Der Quellcode von Python 3.0 ist rationalisiert, schön und elegant

3 Python-Kompilierungs- und Ausführungsprozess

Obwohl Python-Quellcodedateien (.py) direkt mit Python-Befehlen ausgeführt werden können, interpretiert Python den Python-Quellcode tatsächlich nicht direkt. Es verfügt über einen Kompilierungs- und Ausführungsprozess. Der spezifische Prozess ist wie folgt:

Zuerst wird der Python-Quellcode (.py-Datei) kompiliert, um Python-Bytecode (Python-Bytecode, die Erweiterung der Bytecode-Datei ist im Allgemeinen .pyc) zu generieren, und dann wird der Python-Bytecode von der Python Virtual Machine (kurz PVM) ausgeführt und geben Sie schließlich die laufenden Ergebnisse im Terminal aus.

Durch den oben genannten Kompilierungs- und Ausführungsprozess kann Folgendes analysiert werden: Python ist eine interpretierte Sprache, die sich auf die Interpretation von Python-Bytecode und nicht auf Python-Quellcode bezieht . Die Grundidee dieses Mechanismus stimmt mit Java und .NET überein.

3.1 Python-Interpreter

Der Python-Interpreter ( Interpreter ) übersetzt die Python-Sprache in Maschinenanweisungen, die die Computer-CPU verstehen kann.

Das ist die Python, die wir installiert und verwendet haben

3.2 Arten von Python-Interpretern

  • Cpython : Entwickelt in der C-Sprache. Wenn Sie Python über die Befehlszeile ausführen, wird der Cpython-Interpreter gestartet. Das offiziell heruntergeladene Python2.7 ist Cpython. Cpython verwendet >>> als Eingabeaufforderung.
  • Ipython : Ein interaktiver Interpreter, der auf CPython basiert. Mit anderen Worten, IPython wird nur im interaktiven Modus erweitert, aber die Funktion zum Ausführen von Python-Code ist genau die gleiche wie bei CPython. IPython verwendet In [Seriennummer]: als Eingabeaufforderung.
  • PyPy : Hauptsächlich auf die Ausführungsgeschwindigkeit ausgerichtet. Verwenden Sie die JIT-Technologie, um Python-Code dynamisch zu kompilieren. Der meiste Python-Code kann unter PyPy ausgeführt werden.
  • Jpython : Ein Python-Interpreter, der auf der Java-Plattform läuft und Python-Code zur Ausführung direkt in Java-Bytecode kompilieren kann.
  • IronPython : Ein Python-Interpreter, der auf der Microsoft .Net-Plattform läuft und Python-Code direkt in .Net-Bytecode kompilieren kann.
  • Boost.Python : Ermöglicht den gegenseitigen Aufruf von Python- und C++-Klassenbibliotheken (.pyc).

3.3 Python-Bytecode (.pyc)

Bytecode in Python ist ein Datentyp und das kompilierte Ergebnis des Python-Codes ist ein Bytecode-Objekt. Das Bytecode-Objekt kann von der virtuellen Maschine geladen und direkt ausgeführt werden, und die Pyc-Datei ist die auf der Festplatte gespeicherte Form des Bytecodes.

Wenn eine test.py-Datei ausgeführt werden muss, wird zunächst eine .pyc-Datei generiert. Im Allgemeinen sind die möglichen Situationen wie folgt:

  1. Durch die Ausführung von Python test.py wird test.py in Bytecode kompiliert und für die Ausführung interpretiert, test.pyc wird jedoch nicht generiert.
  2. Wenn andere Module in test.py geladen sind, z. B. import urllib2, kompiliert Python urllib2.py in Bytecode, generiert urllib2.pyc und interpretiert und führt dann den Bytecode aus.
  3. Wenn Sie test.pyc generieren möchten, können Sie es mit dem in Python integrierten Modul py_compile kompilieren oder den Befehl zum Generieren von test.pyc ausführen. python -m py_compile test.py 
  4. Wenn beim Laden eines Moduls sowohl .py als auch .pyc vorhanden sind, wird Python mit .pyc ausgeführt. Wenn die Kompilierungszeit von .pyc früher als die von .py ist, wird die .py-Datei neu kompiliert und die .pyc-Datei wird neu kompiliert bleibe auf dem Laufenden.

3.4 Virtuelle Python-Maschine

Python kompiliert die Py-Datei nicht in Maschinencode zum Ausführen. Stattdessen interpretiert die virtuelle Python-Maschine die Py-Anweisungen einzeln und führt sie aus. Die Ausführungsmethode der virtuellen Python-Maschine besteht darin, die Ausführungsmethode gewöhnlicher x86-ausführbarer Dateien zu imitieren.

Die Eingabe der virtuellen Maschine ist eine Bytecode-.pyc-Datei. Der Bytecode-Dateilader lädt die binäre .pyc-Datei in den Speicher. Sie wird von der Ausführungs-Engine interpretiert und ausgeführt, und die Ausgabe ist das Ausführungsergebnis der Bytecode-Datei.

4 Python-Anwendungen

Python-Anwendungen umfassen hauptsächlich die folgenden Bereiche:

  • Linux/UNIX-Betrieb und -Wartung: Bietet API (Application Programming Interface), um die Systemwartung und -verwaltung zu erleichtern.
  • GUI-Programmentwicklung (PyQt, Kivy usw.)
  • Entwicklung von Webprogrammen (Django, Flask und andere Frameworks): Unterstützt die neueste XML-Technologie.
  • Entwicklung mobiler Apps (PyQt, Kivy usw.): Das PyOpenGL-Modul von Python kapselt die „OpenGL-Anwendungsprogrammierschnittstelle“ und kann zweidimensionale und dreidimensionale Bildverarbeitung durchführen. Mit dem PyGame-Modul kann Spielesoftware geschrieben werden.
  • Webcrawler (Bereitstellung von Datenquellen für Suchmaschinen, Deep Learning und andere Bereiche)
  • Netzwerkprogrammierung (basierend auf Protokollen wie Socket): Bietet eine Fülle von Modulen zur Unterstützung der Socket-Programmierung, mit denen sich verteilte Anwendungen einfach und schnell entwickeln lassen. Viele große Softwareentwicklungsprojekte wie Zope, Mnet und BitTorrent. Google nutzen es ausgiebig.
  • Grafikverarbeitung: Sie wird von Grafikbibliotheken wie PIL und Tkinter unterstützt, die die Grafikverarbeitung erleichtern können.
  • Textverarbeitung: Das von Python bereitgestellte Re-Modul kann reguläre Ausdrücke unterstützen und bietet außerdem SGML- und XML-Analysemodule. Viele Programmierer verwenden Python, um XML-Programme zu entwickeln.
  • Datenbankprogrammierung: Kann mit Microsoft SQL Server, Oracle, Sybase, DB2, MySQL, SQLite und anderen Datenbanken über Module kommunizieren, die der Python DB-API-Spezifikation (Database Application Programming Interface) folgen. Python wird mit einem Gadfly-Modul geliefert, das eine vollständige SQL-Umgebung bereitstellt.
  • Data Science: NumPy-Erweiterungen bieten umfangreiche Schnittstellen zu vielen Standard-Mathematikbibliotheken. Maschinelles Lernen (scikit-learn, TensorFlow-Framework), statistische Datenanalyse und Visualisierung (Matplotlib, Seaborn-Framework).

5 Funktionen von Python

  • Leicht zu lesen und zu erlernen : Python ist eine sehr einfache Sprache mit einem klaren Stil und erzwungener Einrückung. Python hat eine einfache Syntax und ist äußerst einfach zu erlernen.
  • Kostenlos und Open Source : Python ist kostenlose/Open-Source-Software. Sie können den Quellcode selbst ändern und verwenden.
  • Portabilität : Python kann auf viele Plattformen portiert werden. Zu den häufig verwendeten Plattformen gehören Linux, Windows, VxWorks, PlayStation, Windows CE, PocketPC usw.
  • Interpretierbarkeit : Der Python-Interpreter konvertiert den Quellcode in Bytecode, übersetzt ihn dann in die vom Computer verwendete Maschinensprache und führt ihn aus. Das heißt, der Python-Code muss vor der Ausführung nicht kompiliert werden.
  • Objektorientiert : Python unterstützt objektorientierte Programmierung. Programme definieren Klassen durch Zusammensetzung und Vererbung.
  • Skalierbarkeit : Wenn Sie eine schnellere Ausführung eines kritischen Codeabschnitts benötigen oder möchten, dass einige Algorithmen nicht veröffentlicht werden, können Sie einen Teil des Programms in C oder C++ schreiben und ihn dann im Python-Programm aufrufen.
  • Einbettbarkeit : Python kann in C/C++-Programme eingebettet werden, um Programmbenutzern Skriptfunktionen bereitzustellen.
  • Interaktive Befehlszeile : Python kann in einer einstufigen wörtlichen Übersetzung ausgeführt werden, und der Code kann direkt nach einer Python-Eingabeaufforderung >>> ausgeführt werden.
  • Umfangreiche Standardbibliothek : Die Python-Standardbibliothek umfasst String-Verarbeitung (Wörterbuch, Array-Slicing, reguläre Ausdrücke), Dokumentgenerierung, Multithreading, Serialisierung, Datenbank, HTML/XML-Analyse (BeautifulSoup, Expat), Unit-Tests (PyUnit) und Codeversion Steuerung (PySVN), WAV-Dateien, Netzwerksteuerung (urllib2), Kryptosystem, GUI (grafische Benutzeroberfläche, PyQt), Grafikmodule (Tkinter, PyTCL, WxPython) usw. Neben der Standardbibliothek gibt es viele weitere hochwertige Bibliotheken, wie unter anderem wxPython, Twisted und die Python-Imaging-Bibliothek.
  • Standardisierung : Durch die Verwendung erzwungener Einrückungen wird der Code besser lesbar und die visuelle Verwirrung verringert.
  • Klebesprache : Python wird oft als Klebesprache verwendet, um in verschiedenen Sprachen geschriebene Programme zusammenzukleben. Boost.Python ermöglicht es Python- und C++-Klassenbibliotheken, sich gegenseitig aufzurufen (.pyc); Jpython ist Python, das in Java implementiert ist, und beide Klassenbibliotheken können gleichzeitig verwendet werden; Ironpython ist die Version von Python auf der .NET-Plattform.

6 Vorteile von Python

  • Leicht zu erlernen, ideal für Anfänger, aber auch großartig für Experten
  • Hoch skalierbar, geeignet für große Projekte oder kleine einmalige Programme (sogenannte Skripte)
  • Tragbar, plattformübergreifend
  • Einbettbar (ArcGIS skriptfähig machen)
  • stabil und ausgereift
  • Große Benutzergemeinschaft

Ich denke du magst

Origin blog.csdn.net/weixin_44362628/article/details/126352061
Empfohlen
Rangfolge