Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Python Grundlagen meistern: Syntax & Fundamentale Konzepte

Erstes Python-Programm

Die Python-Sprache weist viele Ähnlichkeiten zu Perl, C und Java auf. Es gibt jedoch einige deutliche Unterschiede zwischen den Sprachen.

Interaktiver Modus

Der Aufruf des Interpreters ohne Übergeben einer Skriptdatei als Parameter zeigt folgenden Prompt an:

$ python
Python 2.4.3 (#1, Nov 11 2010, 13:34:43)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

Geben Sie folgenden Text an der Python-Eingabeaufforderung ein und drücken Sie Enter:

>>> print "Hello, Python!"

Falls Sie eine neuere Python-Version verwenden, müssen Sie die print-Anweisung mit Klammern verwenden: print ("Hello, Python!");. In Python 2.4.3 erzeugt dies folgendes Ergebnis:

Hello, Python!

Skript-Modus

Der Aufruf des Interpreters mit einem Skriptparameter beginnt die Ausführung des Skripts und läuft fort, bis das Skript beendet ist. Wenn das Skript fertig ist, ist der Interpreter nicht mehr aktiv.

Schreiben wir ein einfaches Python-Programm in ein Skript. Python-Dateien haben die Endung .py. Geben Sie folgenden Quellcode in eine Datei test.py ein:

print "Hello, Python!"

Wir gehen davon aus, dass der Python-Interpreter in der PATH-Variable gesetzt ist. Führen Sie das Programm nun wie folgt aus:

$ python test.py

Dies erzeugt folgendes Ergebnis:

Hello, Python!

Lassen Sie uns einen weiteren Weg ausprobieren, ein Python-Skript auszuführen. Hier ist die modifizierte test.py-Datei:

#!/usr/bin/python
print "Hello, Python!"

Wir gehen davon aus, dass der Python-Interpreter im Verzeichnis /usr/bin verfügbar ist. Führen Sie das Programm nun wie folgt aus:

$ chmod +x test.py  # Datei ausführbar machen
$ ./test.py

Dies erzeugt folgendes Ergebnis:

Hello, Python!

Python-Bezeichner (Identifiers)

Ein Python-Bezeichner ist ein Name, der eine Variable, Funktion, Klasse, Modul oder ein anderes Objekt identifiziert. Ein Bezeichner beginnt mit einem Buchstaben A–Z oder a–z oder einem Unterstrich (_), gefolgt von null oder mehr Buchstaben, Unterstrichen und Ziffern (0–9).

Python erlaubt keine Satzzeichen wie @, $ und % in Bezeichnern. Python unterscheidet Groß- und Kleinschreibung. Daher sind Manpower und manpower zwei unterschiedliche Bezeichner in Python.

Namenskonventionen für Python-Bezeichner:

Reservierte Wörter (Keywords)

Die folgende Liste zeigt die Python-Schlüsselwörter. Dies sind reservierte Wörter, die Sie nicht als Konstanten, Variablen oder andere Bezeichnernamen verwenden können. Alle Python-Schlüsselwörter enthalten nur Kleinbuchstaben.

andexecnot
assertfinallyor
breakforpass
classfromprint
continueglobalraise
defifreturn
delimporttry
elifinwhile
elseiswith
exceptlambdayield

Zeilen und Einrückung

Python verwendet keine Klammern, um Codeblöcke für Klassen- und Funktionsdefinitionen oder Flusssteuerung anzuzeigen. Codeblöcke werden durch Zeileneinrückung gekennzeichnet, die strikt durchgesetzt wird.

Die Anzahl der Leerzeichen in der Einrückung ist variabel, aber alle Anweisungen innerhalb des Blocks müssen gleich stark eingerückt sein. Zum Beispiel:

if True:
    print "True"
else:
    print "False"

Der folgende Block erzeugt jedoch einen Fehler:

if True:
    print "Answer"
print "True"
else:
    print "Answer"
print "False"

In Python bilden also alle aufeinanderfolgenden Zeilen, die mit derselben Anzahl Leerzeichen eingerückt sind, einen Block. Das folgende Beispiel zeigt verschiedene Anweisungsblöcke:

Hinweis – Versuchen Sie an dieser Stelle nicht, die Logik zu verstehen. Stellen Sie nur sicher, dass Sie die verschiedenen Blöcke verstanden haben, auch wenn sie ohne Klammern auskommen.

#!/usr/bin/python
import sys
try:
    # Dateistream öffnen
    file = open(file_name, "w")
except IOError:
    print "There was an error writing to", file_name
    sys.exit()
print "Enter '", file_finish,
print "' When finished"
while file_text != file_finish:
    file_text = raw_input("Enter text: ")
    if file_text == file_finish:
        # Datei schließen
        file.close()
        break
    file.write(file_text)
    file.write("\n")
file.close()
file_name = raw_input("Enter filename: ")
if len(file_name) == 0:
    print "Next time please enter something"
    sys.exit()
try:
    file = open(file_name, "r")
except IOError:
    print "There was an error reading file"
    sys.exit()
file_text = file.read()
file.close()
print file_text

Mehrzeilige Anweisungen

Anweisungen in Python enden typischerweise mit einer neuen Zeile. Python erlaubt jedoch die Verwendung des Zeilenfortsetzungszeichens (\) um anzugeben, dass die Zeile fortgesetzt werden soll. Zum Beispiel:

total = item_one + \
        item_two + \
        item_three

Anweisungen, die in [], {} oder () Klammern enthalten sind, benötigen das Zeilenfortsetzungszeichen nicht. Zum Beispiel:

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

Anführungszeichen in Python

Python akzeptiert einfache ('), doppelte (") und dreifache (''' oder """) Anführungszeichen zur Kennzeichnung von String-Literalen, solange dieselbe Art von Anführungszeichen den String beginnt und beendet.

Dreifache Anführungszeichen werden verwendet, um den String über mehrere Zeilen zu erstrecken. Zum Beispiel sind alle folgenden gültig:

word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph.
It is made up of multiple lines and sentences."""

Kommentare in Python

Ein Hash-Zeichen (#), das nicht innerhalb eines String-Literals steht, beginnt einen Kommentar. Alle Zeichen nach dem # bis zum Ende der physischen Zeile sind Teil des Kommentars und werden vom Python-Interpreter ignoriert.

#!/usr/bin/python
# First comment
print "Hello, Python!"
# second comment

Dies erzeugt folgendes Ergebnis:

Hello, Python!

Sie können einen Kommentar auf derselben Zeile nach einer Anweisung oder einem Ausdruck eingeben:

name = "Madisetti"  # This is again comment

Mehrere Zeilen können wie folgt kommentiert werden:

# This is a comment.
# This is a comment, too.
# This is a comment, too.
# I said that already.

Ein dreifach-gequoterter String wird ebenfalls vom Python-Interpreter ignoriert und kann als mehrzeiliger Kommentar verwendet werden:

''' This is a multiline comment. '''

Leerzeilen verwenden

Eine Zeile, die nur Whitespace enthält (eventuell mit einem Kommentar), wird als Leerzeile bezeichnet und von Python vollständig ignoriert.

In einer interaktiven Interpreter-Sitzung müssen Sie eine leere physische Zeile eingeben, um eine mehrzeilige Anweisung zu beenden.

Auf den Benutzer warten

Die folgende Programmzeile zeigt die Aufforderung, die Meldung „Drücken Sie die Enter-Taste zum Beenden“ an und wartet, bis der Benutzer handelt:

#!/usr/bin/python
raw_input("\n\nPress the enter key to exit.")

Hier erzeugt "\n\n" zwei neue Zeilen vor der eigentlichen Zeile. Sobald der Benutzer die Taste drückt, endet das Programm. Dies ist ein nützlicher Trick, um ein Konsolenfenster offen zu halten, bis der Benutzer mit einer Anwendung fertig ist.

Mehrere Anweisungen in einer Zeile

Das Semikolon (;) erlaubt mehrere Anweisungen in einer einzigen Zeile, vorausgesetzt, keine Anweisung beginnt einen neuen Codeblock. Hier ist ein Beispiel:

import sys; x = 'foo'; sys.stdout.write(x + '\n')

Mehrere Anweisungsgruppen als Suites

Eine Gruppe einzelner Anweisungen, die einen einzelnen Codeblock bilden, nennt man in Python Suites. Zusammengesetzte oder komplexe Anweisungen wie if, while, def und class erfordern eine Header-Zeile und eine Suite.

Header-Zeilen beginnen die Anweisung (mit dem Schlüsselwort) und enden mit einem Doppelpunkt (:), gefolgt von einer oder mehreren Zeilen, die die Suite bilden. Zum Beispiel:

if expression :
    suite
elif expression :
    suite
else :
    suite

Kommandozeilenargumente

Viele Programme können ausgeführt werden, um grundlegende Informationen darüber zu erhalten, wie sie ausgeführt werden sollen. Python ermöglicht dies mit -h:

$ python -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d : debug output from parser (also PYTHONDEBUG=x)
-E : ignore environment variables (such as PYTHONPATH)
-h : print this help message and exit [ etc. ]

Sie können Ihr Skript auch so programmieren, dass es verschiedene Optionen akzeptiert. Kommandozeilenargumente sind ein fortgeschrittenes Thema und sollten später studiert werden, nachdem Sie die übrigen Python-Konzepte durchgearbeitet haben.

Python

  1. Python-Datentypen meistern: Praxisleitfaden
  2. Python-Operatoren meistern: Umfassender Leitfaden
  3. Python pass-Statement meistern: Praxisleitfaden
  4. Python-Funktionsargumente meistern: Positional, Keyword & Default-Parameter
  5. Pythons time.sleep() meistern: Best Practices, Multithreading und Praxisbeispiele
  6. Java Grundlagen: Grundlegende Syntax meistern
  7. C-Grundsyntax meistern: Tokens, Struktur und Semikolons
  8. C++ Grundlagen: Syntax & Objektorientierte Basis
  9. MATLAB Grundlagen: Wesentliche Syntax & Befehle meistern
  10. C# Grundlagen: Grundlegende Syntax & OOP-Konzepte meistern