Module mit Funktionsdefinitionen in Python anlegen (Module mit Funktionsdefinitionen in Python anlegen), Lektion, Seite 724007
https://www.purl.org/stefan_ram/pub/module_anlegen_python (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Module mit Funktionsdefinitionen in Python  anlegen

Mit »getcwd« kann das aktuelle Verzeichnis der zur Auswertung von »getcwd()« verwendeten Python -Implementation ermittelt werden.

Protokoll

from os import getcwd

print( getcwd() )

C:\Users\dozent\AppData\Local\Programs\Python\Python37\

Wir können im aktuellen Verzeichnis eine Quelldatei mit Funktionsdefinitionen anlegen.

hello.py
def helloworld():
print( 'hello' )
print( 'world' )

Normalerweise gibt der Editor von IDLE  das richtige Verzeichnis vor, also das Verzeichnis «getcwd()».

Das Modul darf nicht  in einem anderen Verzeichnis als in «getcwd()» abgespeichert werden.
(Genauergesagt: Das Modul muß im selben Verzeichnis liegen wie auch das Hauptprogramm, von dem aus das Modul importiert wird.)

Wir können solche eine Quelldatei nun als Modul verwenden, aus dem wir die Funktionen importieren können.

Protokoll
from hello import helloworld
world
helloworld()
hello

/   Übungsaufgabe ⃖ °

Schreiben Sie die folgenden Funktionsdefinitionen zum Einlesen eines int-Werts beziehungsweise eines float-Wertes in ein Modul »user«, so daß die Funktionen ab jetzt immer nach »from user import *« als »get« und »read« verwendet werden können.

Definition von »get()«
def get( prompt='' ):
return int( input( prompt ))
Definition von »read()«
def read( prompt='' ):
return float( input( prompt ))

Die Namen dieser Funktionen bringen den Datentyp des Ergebnisses nicht  gut zum Ausdruck! – Es erschien hier aber als wichtiger kurze  Namen zu finden, um die Verkürzung  zum Ausdruck zu bringen, welche die Definition erlaubt.

Teilnehmerfrage Wie kann man den Pfad erweitern, in dem nach Modulen gesucht wird? *

Man kann die Suchpfadliste ganz am Anfang eines Programmes erweitern (hier, um das Verzeichnis »C:\example«).

Dies kann aber zu verschiedenen Problemen führen, weswegen es besser ist, zunächst alle Module und Skripte in einem Verzeichnis zu halten. (Fortgeschrittene können dann mit Paketen oder ordentlichen Installationen von Modulen arbeiten.)

main.py

import sys

sys.path.append( r'C:\example' )

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram724007 stefan_ram:724007 Module mit Funktionsdefinitionen in Python anlegen Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd724007, slrprddef724007, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/module_anlegen_python