Seite 1 von 1

Neuling mit einer Frage zur Klassen Programmierung

Verfasst: Freitag 27. Juni 2008, 19:36
von derkai
Hallo,

so ab und an melde ich mich und stelle eine dumme Frage.
Ich bin sowohl MAC, aber auch Python Neuling und lese im
Moment viele viele Bücher.

Was mir aber leider immer noch nicht klar gworden ist :

1. Ich schreibe eine Klasse. z.B.

class Panzerung (object) :

def __init__ (self,pal,par,pav,pah,pat,pil,pir,piv,pih,pit) :

self.pal = pal
self.par = par
self.pav = pav
self.pah = pah
self.pat = pat
self.pil = pil
self.pir = pir
self.piv = piv
self.pih = pih
self.pit = pit

Dies habe ich nun mehrfach vor, um dann aus einem
Hauptprogramm heras einen Zugriff vornehmen zu können.

Nur unter welcher .Endung speichere ich eine Klasse ab und
wie rufe ich diese dann im Hauptprgramm auf ?

Danke vorab Gruß

Kai

Verfasst: Freitag 27. Juni 2008, 19:57
von numerix
Eine Klasse muss gar nicht "abgespeichert" werden.

Ebenso wie du verschiedene Funktionen innerhalb einer Quelltext-Datei definieren kannst, so auch mehrere Klassen.

"Abspeichern" hat dagegen etwas mit einer Aufteilung in Module zu tun. Wann und in welcher Form das sinnvoll ist, darüber lässt sich streiten (es gibt dazu mindestens einen Thread aus neuerer Zeit hier im Forum, wo es um diese Frage ging.)

Verfasst: Freitag 27. Juni 2008, 20:26
von derkai
alles klar,

geht aber auch so :

from xxxx import *


Danke
Kai

Verfasst: Freitag 27. Juni 2008, 20:38
von numerix
derkai hat geschrieben: geht aber auch so :

from xxxx import *
:?:

(wobei in jedem Fall "Sternchen-Importe" meistens keine gute Idee sind)

Verfasst: Freitag 27. Juni 2008, 20:40
von BlackJack
Auf jeden Fall ist die Namensgebung der Argumente/Attribute extrem schlecht. Falls das 'p' immer für Panzerung steht, ist es überflüssig, denn diese Information steckt schon in dem Namen der Klasse. Und der Rest sollte nicht abgekürzt werden, damit man weiss worum es geht.

Und den Sternchenimport vergisst Du bitte sofort wieder.