Seite 1 von 1

[Anfängerfrage] Module und Pakete -> gelöst!

Verfasst: Donnerstag 15. Juli 2010, 20:04
von zenker
Version: Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41)


Hallo,

ich beschäftige mich jetzt nach langer Abstinenz wieder mit Python und nutze dazu unter anderem die Seite

http://de.wikibooks.org/wiki/Python_unter_Linux:_Module

In ihr ist beschrieben, das man Module in "Pakete" zusammen packen kann, sprich die Module sind in Unterverzeichnisse im Programmordner untergebracht

Folgende Situation:

Programmordner "erste_schritte"
enthält auch den Ordner "abc"

Im Ordner "abc" ist eine "__init__.py" enthalten und die Datei "modul.py"

folgendes steht im "Hauptprogramm":

Code: Alles auswählen

#!/usr/bin/python
#-*- coding: utf-8 -*-

import abc.modul

abc.modul.main()
Aber schon beim starten des Hauptprogramms unter Geany und in der Konsole bekomme ich folgende Info:

"Traceback (most recent call last):
File "./001_hallo_welt.py", line 4, in <module>
import abc.modul
ImportError: No module named modul"

"001_hallo_welt.py" ist hierbei das Hauptprogramm, aus dem eine Funktion ("main()") in "modul" aufgerufen werden soll.


Wieso läuft das nicht?
Für Antworten im voraus herzlichen Dank!

Re: [Anfängerfrage] Module und Pakete

Verfasst: Donnerstag 15. Juli 2010, 20:49
von ms4py

Code: Alles auswählen

>>> import abc
>>> import sys
>>> sys.modules['abc']
<module 'abc' from 'C:\Python26\lib\abc.pyc'>
Das Modul "abc" ist in der Stdlib bereits vorhanden, einfach einen anderen Namen für das Paket wählen. ("modul" ist auch kein guter Name!)

Re: [Anfängerfrage] Module und Pakete

Verfasst: Donnerstag 15. Juli 2010, 20:54
von cofi
Was mich allerdings wundert ist, dass das Verzeichnis des Skriptes frueher im Pfad steht. Seltsam, dass das Verhalten fuer Pakete von dem fuer Module abweicht.

Warum eigtl das Wikibook und nicht das Tutorial?

Re: [Anfängerfrage] Module und Pakete

Verfasst: Donnerstag 15. Juli 2010, 21:00
von zenker
ms4py hat geschrieben:Das Modul "abc" ist in der Stdlib bereits vorhanden, einfach einen anderen Namen für das Paket wählen. ("modul" ist auch kein guter Name!)
Oh, danke! Nachdem ich die Namen mal geändert habe funktioniert es! Danke nochmal!
Das ganze war auch bloß ein Test. Ein besserer Name als "modul" ist natürlich angebracht.

Re: [Anfängerfrage] Module und Pakete

Verfasst: Donnerstag 15. Juli 2010, 21:03
von zenker
cofi hat geschrieben:Warum eigtl das Wikibook und nicht das Tutorial?
Ich finde, daß das Wikibook eigentlich ganz gut erklärt. Es führt relativ schnell zu ersten Erfolgen.
Das Tutorial (->noch nicht reingeguckt) werde ich mir aber später auch noch mal anschauen!