automatisches erhöhen einer variablen

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.
dash

automatisches erhöhen einer variablen

Beitragvon dash » Montag 12. Januar 2004, 21:15

hallo,
ich soll für die schule etwas in python programmieren.
leider habe ich ein problem:

python soll für jedes objekt in einer liste eine jeweilige variable setzen, die den wert 0 hat.
leider weiß ich nich wie...
ich weiß einfach nicht, wie ich der variablen "v" eine nummer geben soll (z.b. v1 ), damit diese unverkennbar ist, und dieser unverkennbaren variable den wert "0" gebe (z.b. v1=0 )

hoffe, mein problem ist verständlich...

Code: Alles auswählen

   whv1=0
      
   
   while whv1<len(liste):
      v[whv1]=whv1
      whv1=whv+1
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Montag 12. Januar 2004, 21:31

Hi dash,

so ganz klar ist mir nicht was du meinst.

Code: Alles auswählen

for i in xrange(len(liste)):
    v[i] = 0 # oder i wenn v[0] = 0, v[1] = 1, v[2]=2, ... sein soll



Gruß Dookie
dash

Beitragvon dash » Montag 12. Januar 2004, 21:42

hi Dookie, vielen dank für die schnelle antwort
ja du hast mein problem erfasst :) (wenn ich deinen code jetzt richtig deute...)

er soll so viele variablen mit dem wert 0 erstellen, wie es objekte in der liste gibt (also wenn es 4 objekte in der liste wären, müsste es am ende vier variablen mit dem wert 0 geben. ( v[1]=0 v[2]=0 v[3]=0 v[4]=0 )

leider gibt mir mit deinem code einen fehler aus:

Code: Alles auswählen

File "C:\xxx\inf02.py", line 40, in def1
    v[i]=0
TypeError: object does not support item assignment


was bedeutet das? in der schule haben wir gelernt, dass man variablen, die man benutzt, vorher definieren muss. stimmt das? denn hier werden die variablen ja während des ausführens des codes erstellt...
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Montag 12. Januar 2004, 21:58

Genau daran liegts,

Code: Alles auswählen

v = [None]*len(liste) #erstelle liste v mit gleicher laenge wie liste
for i in xrange(len(liste)):
   v[i] = 0

oder kurzform

Code: Alles auswählen

v = [0]*len(liste)



Gruß

Dookie
dash

Beitragvon dash » Montag 12. Januar 2004, 22:39

Es klappt!

Vielen Dank für die schnelle (und hilfreiche) Antwort :)


dash

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder