Python - Grundlegende Syntax

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

Erstes Python-Programm

Lassen Sie uns Programme in verschiedenen Programmiermodi ausführen.

Interaktive Programmierung

Wenn Sie den Interpreter aufrufen, ohne eine Skriptdatei als Parameter zu übergeben, wird die folgende Eingabeaufforderung angezeigt:

$ 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 den folgenden Text an der Python-Eingabeaufforderung ein und drücken Sie die Eingabetaste -

>>> print "Hello, Python!"

Wenn Sie eine neue Version von Python ausführen, müssen Sie die print-Anweisung in Klammern wie in verwenden print ("Hello, Python!");. In Python Version 2.4.3 führt dies jedoch zu folgendem Ergebnis:

Hello, Python!

Skriptmodus-Programmierung

Das Aufrufen des Interpreters mit einem Skriptparameter beginnt mit der Ausführung des Skripts und wird fortgesetzt, 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 Erweiterung.py. Geben Sie den folgenden Quellcode in eine test.py-Datei ein:

print "Hello, Python!"

Wir gehen davon aus, dass Sie den Python-Interpreter in der PATH-Variablen festgelegt haben. Versuchen Sie nun, dieses Programm wie folgt auszuführen:

$ python test.py

Dies ergibt das folgende Ergebnis:

Hello, Python!

Versuchen wir einen anderen Weg, um ein Python-Skript auszuführen. Hier ist die geänderte Datei test.py -

#!/usr/bin/python

print "Hello, Python!"

Wir gehen davon aus, dass Sie den Python-Interpreter im Verzeichnis / usr / bin verfügbar haben. Versuchen Sie nun, dieses Programm wie folgt auszuführen:

$ chmod +x test.py     # This is to make file executable
$./test.py

Dies ergibt das folgende Ergebnis:

Hello, Python!

Python-Bezeichner

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

Python erlaubt keine Interpunktionszeichen wie @, $ und% in Bezeichnern. Python ist eine Programmiersprache, bei der zwischen Groß- und Kleinschreibung unterschieden wird. So,Manpower und manpower sind zwei verschiedene Bezeichner in Python.

Hier sind Namenskonventionen für Python-Bezeichner:

  • Klassennamen beginnen mit einem Großbuchstaben. Alle anderen Bezeichner beginnen mit einem Kleinbuchstaben.

  • Das Starten eines Bezeichners mit einem einzelnen führenden Unterstrich zeigt an, dass der Bezeichner privat ist.

  • Das Starten eines Bezeichners mit zwei führenden Unterstrichen zeigt einen stark privaten Bezeichner an.

  • Wenn der Bezeichner auch mit zwei nachgestellten Unterstrichen endet, ist der Bezeichner ein sprachdefinierter Sondername.

Reservierte Wörter

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

und exec nicht
behaupten schließlich oder
Unterbrechung zum bestehen
Klasse von drucken
fortsetzen global erziehen
def wenn Rückkehr
del importieren Versuchen
elif im während
sonst ist mit
außer Lambda Ausbeute

Linien und Einrückungen

Python bietet keine geschweiften Klammern, um Codeblöcke für Klassen- und Funktionsdefinitionen oder die Flusskontrolle anzugeben. Codeblöcke werden durch Zeileneinrückungen gekennzeichnet, die streng erzwungen werden.

Die Anzahl der Leerzeichen in der Einrückung ist variabel, aber alle Anweisungen innerhalb des Blocks müssen gleich viel eingerückt werden. 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"

Somit würden in Python alle durchgehenden Linien, die mit der gleichen Anzahl von Leerzeichen eingerückt sind, einen Block bilden. Das folgende Beispiel enthält verschiedene Anweisungsblöcke -

Note- Versuchen Sie zu diesem Zeitpunkt nicht, die Logik zu verstehen. Stellen Sie einfach sicher, dass Sie verschiedene Blöcke verstanden haben, auch wenn sie keine geschweiften Klammern haben.

#!/usr/bin/python

import sys

try:
   # open file stream
   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:
      # close the file
      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 normalerweise 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 in den Klammern [], {} oder () müssen nicht das Zeilenfortsetzungszeichen verwenden. Zum Beispiel -

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

Zitat in Python

Python akzeptiert einfache ('), doppelte (") und dreifache (' '' oder" "") Anführungszeichen, um Zeichenfolgenliterale zu kennzeichnen, sofern dieselbe Art von Anführungszeichen die Zeichenfolge beginnt und beendet.

Die dreifachen Anführungszeichen werden verwendet, um die Zeichenfolge über mehrere Zeilen zu verteilen. Zum Beispiel sind alle folgenden legal -

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 sich nicht in einem String-Literal befindet, beginnt einen Kommentar. Alle Zeichen nach dem # und 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 ergibt das folgende Ergebnis:

Hello, Python!

Sie können nach einer Anweisung oder einem Ausdruck einen Kommentar in dieselbe Zeile eingeben.

name = "Madisetti" # This is again comment

Sie können mehrere Zeilen wie folgt kommentieren:

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

Die folgende Zeichenfolge in dreifachen Anführungszeichen wird vom Python-Interpreter ebenfalls ignoriert und kann als mehrzeiliger Kommentar verwendet werden:

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

Leerzeilen verwenden

Eine Zeile, die nur Leerzeichen enthält, möglicherweise mit einem Kommentar, wird als Leerzeile bezeichnet und von Python vollständig ignoriert.

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

Warten auf den Benutzer

In der folgenden Zeile des Programms wird die Eingabeaufforderung mit der Anweisung "Drücken Sie die Eingabetaste zum Beenden" angezeigt und wartet darauf, dass der Benutzer Maßnahmen ergreift.

#!/usr/bin/python

raw_input("\n\nPress the enter key to exit.")

Hier wird "\ n \ n" verwendet, um zwei neue Zeilen zu erstellen, bevor die tatsächliche Zeile angezeigt wird. Sobald der Benutzer die Taste drückt, endet das Programm. Dies ist ein guter Trick, um ein Konsolenfenster geöffnet zu halten, bis der Benutzer mit einer Anwendung fertig ist.

Mehrere Anweisungen in einer einzelnen Zeile

Das Semikolon (;) erlaubt mehrere Anweisungen in einer Zeile, da keine der Anweisungen einen neuen Codeblock startet. Hier ist ein Beispielausschnitt mit dem Semikolon -

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

Mehrere Anweisungsgruppen als Suiten

Eine Gruppe einzelner Anweisungen, die einen einzelnen Codeblock bilden, wird aufgerufen suitesin Python. Zusammengesetzte oder komplexe Anweisungen, z. B. if, while, def und class, erfordern eine Kopfzeile und eine Suite.

Kopfzeilen beginnen die Anweisung (mit dem Schlüsselwort) und enden mit einem Doppelpunkt (:) und werden von einer oder mehreren Zeilen gefolgt, aus denen die Suite besteht. Zum Beispiel -

if expression : 
   suite
elif expression : 
   suite 
else : 
   suite

Kommandozeilenargumente

Viele Programme können ausgeführt werden, um Ihnen einige grundlegende Informationen darüber zu geben, wie sie ausgeführt werden sollen. Mit Python können Sie dies mit -h - tun.

$ 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. Befehlszeilenargumente sind ein fortgeschrittenes Thema und sollten etwas später untersucht werden, sobald Sie die restlichen Python-Konzepte durchlaufen haben.