Evgenii Legotckoi
Evgenii Legotckoi24. Februar 2018 11:51

Python 3 - Tutorial 003. Grundlegende Syntax

Die Python-Sprache hat viele Ähnlichkeiten mit Perl, C und Java. Allerdings gibt es gewisse Unterschiede zwischen den Sprachen.

Erstes Python-Programm

Lassen Sie uns die Programme in verschiedenen Programmiermodi ausführen.

Interaktiver Programmiermodus

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

$ python

Python 3.5.2 (default, Dec 10 2013, 11:35:01)
[GCC 5.4.0] on Linux
Type "help", "copyright", "credits", or "license" for more information.
>>>

On Windows:

Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32
Type "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 ältere Version von Python (Python 2.x) verwenden, ist die Verwendung von Klammern als inprint -Funktion optional. Dies ergibt folgendes Ergebnis:

Hello, Python!

Programmiermodus mit Skripten

Der Aufruf des Interpreters mit dem Skriptparameter startet die Ausführung des Skripts und wird fortgesetzt, bis das Skript beendet wird. Wenn das Skript beendet ist, ist der Interpreter nicht mehr aktiv.

Lassen Sie uns ein einfaches Python-Programm in einem Skript schreiben. Python-Dateien haben die Erweiterung .py . Geben Sie den folgenden Quellcode in die Datei test.py ein -

print ("Hello, Python!")

Nehmen wir an, Sie haben einen Python-Interpreter in der Variablen PATH installiert. Versuchen Sie nun, dieses Programm wie folgt auszuführen:

Linux

$ python test.py 

Dies ergibt folgendes Ergebnis:

Hello, Python!

Fenster

C:\Python35>Python test.py

Dies ergibt folgendes Ergebnis:

Hello, Python!

Lassen Sie uns einen anderen Weg ausprobieren, um ein Python-Skript unter Linux auszuführen. Hier ist die modifizierte test.py-Datei -

#!/usr/bin/python3
print ("Hello, Python!")

Nehmen wir an, Sie haben einen Python-Interpreter im Verzeichnis /usr/bin verfügbar. Versuchen Sie nun, dieses Programm wie folgt auszuführen:

$ chmod +x test.py     # Сделать файл исполяемым
$./test.py

Dies ergibt folgendes Ergebnis:

Hello, Python!

Python-Identifikatoren

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

Python erlaubt keine Satzzeichen wie @, $ und % in Bezeichnern. Python ist eine Programmiersprache, die zwischen Groß- und Kleinschreibung unterscheidet. Manpower und Manpower sind also zwei verschiedene Bezeichner in Python.

Hier sind die Namenskonventionen für Python-Bezeichner:

  • Klassennamen beginnen mit einem Großbuchstaben. Alle anderen Kennungen beginnen mit einem Kleinbuchstaben.
  • Der Beginn eines Bezeichners mit einem einzelnen Unterstrich bedeutet, dass der Bezeichner privat ist.
  • Ein Bezeichner, der mit zwei führenden Unterstrichen beginnt, weist auf einen starken privaten Bezeichner hin.
  • Wenn der Bezeichner auch mit zwei abschließenden Unterstrichen endet, ist der Bezeichner ein spezieller Name, der von der Sprache definiert wird.

Reservierte Wörter

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

und
als
behaupten
Pause
Klasse
weiter
def
del
elf
sonst
außer

Zeilen und Einzüge

Python verwendet keine geschweiften Klammern ({}), um Codeblöcke für Klassen- und Funktionsdefinitionen oder Flusssteuerung zu kennzeichnen. Codeblöcke werden durch eine Anhangszeichenfolge gekennzeichnet, die ausnahmslos immer angewendet wird.

Die Anzahl der einzurückenden Leerzeichen ist variabel, aber alle Anweisungen innerhalb eines Blocks müssen gleich lang eingerückt werden. Zum Beispiel,

if True:
    print ("True")

else:
    print ("False")

Der folgende Block generiert jedoch einen Fehler -

if True:
    print ("Answer")
print ("True")

else:
    print ("Answer")
print ("False")

In Python bilden also alle eingerückten durchgehenden Zeilen mit der gleichen Anzahl Leerzeichen einen Block. Das folgende Beispiel hat verschiedene Anweisungsblöcke -

Notiz. Versuchen Sie nicht, die Logik des Codes zu verstehen. Stellen Sie nur sicher, dass Sie verstehen, wie Blöcke in Python gebildet werden.

#!/usr/bin/python3

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 = 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 Deklarationen

Deklarationen in Python enden normalerweise mit einem Zeilenumbruch. In Python können Sie jedoch das Zeilenfortsetzungszeichen () verwenden, um anzuzeigen, dass eine Zeile fortgesetzt werden soll. Zum Beispiel,

total = item_one + \
        item_two + \
        item_three

Deklarationen in Klammern [], {} oder () dürfen kein Zeilenfortsetzungszeichen verwenden. Zum Beispiel,

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

Anführungszeichen in Python

Python akzeptiert einfache ('), doppelte (") und dreifache (''' oder """) Anführungszeichen, um Zeichenfolgenliterale zu bezeichnen, solange dasselbe Anführungszeichen beginnt und endet.

Dreifache Anführungszeichen werden verwendet, um eine Zeichenfolge über mehrere Zeilen zu erstrecken. Beispielsweise sind alle folgenden Beispiele möglich -

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 Rautezeichen (#), das sich nicht in einem Zeichenfolgenliteral befindet, ist der Beginn eines Kommentars. Alle Zeichen nach # bis zum Ende der physischen Zeile sind Teil des Kommentars und werden vom Python-Interpreter ignoriert.

#!/usr/bin/python3

# First comment
print ("Hello, Python!") # second comment

Dies ergibt folgendes Ergebnis:

Hello, Python!

Sie können einen Kommentar in derselben Zeile nach einer Deklaration oder einem Ausdruck eingeben -

name = "Madisetti" # This is again comment

Python hat keine mehrzeilige Kommentarfunktion. Sie müssen jede Zeile separat kommentieren:

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

Leere Zeichenfolgen verwenden

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

In einer interaktiven Interpretersitzung müssen Sie eine leere physische Zeichenfolge eingeben, um eine mehrzeilige Anweisung abzuschließen.

Warten auf Benutzer

Die folgende Zeile des Programms zeigt eine Eingabeaufforderung und die Meldung "Press enter to exit" an und wartet dann darauf, dass der Benutzer eine Aktion ausführt -

#!/usr/bin/python3

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

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

Mehrere Deklarationen in einer Zeile

Das Semikolon (;) erlaubt mehrere Anweisungen in derselben Zeile, es sei denn, die no-Anweisung beginnt einen neuen Codeblock. Hier ist ein Beispiel mit Semikolon -

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

Mehrere Ausdrucksgruppen als Set

Gruppen von einzelnen Anweisungen, die einen Codeblock bilden, werden in Python als Sets bezeichnet. Komplexe oder komplexe Anweisungen wie if, while, def und class erfordern eine Kopfzeile und eine Menge.

Kopfzeilen beginnen mit einem Operator (mit einem Schlüsselwort) und enden mit einem Doppelpunkt (:), gefolgt von einer oder mehreren Zeilen, die den Satz bilden. 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. Python ermöglicht Ihnen 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. ]
Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Stabiles Hosting des sozialen Netzwerks EVILEG. Wir empfehlen VDS-Hosting für Django-Projekte.

Magst du es? In sozialen Netzwerken teilen!

s
  • 24. Februar 2018 15:03

https://s.mail.ru/LPJj/fgGKTeJiQ

Парсер съел отступы

======

Многострочные объяления


======
>Python не имеет функции многострочного комментирования. Вы должны прокомментировать каждую строку отдельно:

но ведь есть тройные ковычки

Evgenii Legotckoi
  • 24. Februar 2018 15:30

В примерах поправил.


Тройные кавычки - это не комментарии... это возможность многострочного ввода. То, что программисты Python используют их в качестве комментариев - это уже отдельный разговор. Комментарии через # игнорируются интерпретатором Python, тогда когда тройные кавычки интерпретатором Python не игнорируются.

Сравните поведение такого кода
print(
"Сегодня"
"Прекрасный"
"день"
)
С поведением вот этого кода
print(
"""
—————————————|
Сегодня
Прекрасный
день
—————————————|
"""
)

Kommentare

Nur autorisierte Benutzer können Kommentare posten.
Bitte Anmelden oder Registrieren
Letzte Kommentare
ИМ
Игорь Максимов5. Oktober 2024 07:51
Django – Lektion 064. So schreiben Sie eine Python-Markdown-Erweiterung Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas55. Juli 2024 11:02
QML - Lektion 016. SQLite-Datenbank und das Arbeiten damit in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
k
kmssr8. Februar 2024 18:43
Qt Linux - Lektion 001. Autorun Qt-Anwendung unter Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
Qt WinAPI - Lektion 007. Arbeiten mit ICMP-Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
EVA
EVA25. Dezember 2023 10:30
Boost - statisches Verknüpfen im CMake-Projekt unter Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
Jetzt im Forum diskutieren
J
JacobFib17. Oktober 2024 03:27
добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
JW
Jhon Wick1. Oktober 2024 15:52
Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…
КГ
Кирилл Гусарев27. September 2024 09:09
Не запускается программа на Qt: точка входа в процедуру не найдена в библиотеке DLL Написал программу на C++ Qt в Qt Creator, сбилдил Release с помощью MinGW 64-bit, бинарнику напихал dll-ки с помощью windeployqt.exe. При попытке запуска моей сбилженной программы выдаёт три оши…
F
Fynjy22. Juli 2024 04:15
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …

Folgen Sie uns in sozialen Netzwerken