Variable Zahl nach self.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
gorba
User
Beiträge: 100
Registriert: Freitag 28. Juli 2006, 14:58

Montag 28. August 2006, 09:57

Hallo, ich schreibe gerade ein kleines testProgramm und bin auf folgendes (Namens) Problem gestossen. Funktionier sowas in Python:

Code: Alles auswählen

class doit:
	def __init__(self, data):
		i = 0
		posH = 100
		posL = 0
		size = len(data)
		while(posL <= size):
			self.'B%d' % i = data[posL:posH]
			posL = posH + 1
			posH = posH + 100
			i = i + 1
		self.AB = i
Geht mir um die Zeile self.'B%d' % i = ...
So dass dan self.B0, self.B1, self.B2 ... etc. abrufbar ist.

Bin noch nicht schlau geworden aus dem ganzen.
Benutzeravatar
jens
Moderator
Beiträge: 8482
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Montag 28. August 2006, 10:11

Nutzte doch besser ein Dict!

[wiki]Tutorial/Dictionary[/wiki]

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Montag 28. August 2006, 10:30

Das geht mit setattr:

Code: Alles auswählen

class A(object):
    def __init__(self):
        setattr(self, 'name_of_something', 42)

a = A()
a.name_of_something# -> 42
TUFKAB – the user formerly known as blackbird
Antworten