Читать книгу Routineaufgaben mit Python automatisieren - Al Sweigart - Страница 77

Überschreiben Sie keine Modulnamen!

Оглавление

Wenn Sie Ihre Python-Skripte speichern, müssen Sie darauf achten, dass Sie ihnen nicht die Namen von Python-Modulen wie random.py, sys.py, os.py oder math.py geben. Sollten Sie versehentlich eines Ihrer Programme etwa random.py nennen und dann in einem anderen Programm die Anweisung import random verwenden, so wird statt des Python-Moduls random Ihre Datei random.py importiert. Das kann zu einer Fehlermeldung wie AttributeError: module 'random' has no attribute 'randint' führen, da Ihre Datei nicht über die Funktionen verfügt, die sich in dem echten Modul random befinden. Verwenden Sie auch keine Namen von eingebauten Python-Funktionen wie print()oder input().

Solche Probleme sind zwar selten, doch wenn sie auftreten, lassen sie sich nur schwer finden. Mit zunehmender Programmiererfahrung werden Sie die Namen der Standardmodule und -funktionen von Python besser kennen und dadurch noch seltener in solche Schwierigkeiten kommen.

Wenn Sie dieses Programm ausführen, erhalten Sie eine Ausgabe wie die folgende:

4

1

8

4

1

Die Ausführung dieses Programms können Sie sich auf https://autbor.com/printrandom/ ansehen. Der Aufruf der Funktion random.randint() wird zu einem zufälligen Integerwert ausgewertet, der zwischen den beiden übergebenen Integern liegt. Da randint() zum Modul random gehört, müssen Sie dem Funktionsnamen random. voranstellen, um Python anzuweisen, in diesem Modul nach der Funktion zu suchen.

Das folgende Beispiel zeigt eine import-Anweisung, die gleich vier verschiedene Module importiert:

import random, sys, os, math

Danach können Sie alle Funktionen dieser vier Module nutzen. Mehr darüber erfahren Sie weiter hinten in diesem Buch.

Routineaufgaben mit Python automatisieren

Подняться наверх