Sida 1 av 1
skapa variabler med en växande variabel
Postat: 15 aug 2007, 16:12
av Chippen
Tjo
Jag håller på att fippla lite med python och funderar på en grejj.
Jag har en while sats där i = i + 1
men sen vill jag att varje gång satsen upprepas så ska det skapas en variebel (eller snarare en tuppel) som heter något följt av i...tex stoli... men det blir ju förståss så att då skapas en tuppel som heter stoli varje gång och inte som jag vill tex stol1, stol2 osv... hur löser man detta?
SV: skapa variabler med en växande variabel
Postat: 15 aug 2007, 16:29
av Lars
Jag tror inte att det går i Python, men i t.ex. C kan man göra det med makron. En annan lösning är ju att skapa en lista av tupplar istället. Varför vill du ha flera variabler?
SV: skapa variabler med en växande variabel
Postat: 15 aug 2007, 17:50
av Chippen
för att inte gå in på närmare detaljer läs (
http://ubuntu-se.org/smf/index.php/topic,14379.0.html)
Jag har alltså 256 brickor och varje bricka vill jag gör till en tuppel med 4 värden... sen vill jag att varje bricka ska få namnet bricka(nummer)...
Nu håller jag bara på att prövar lite grejjer med tupplar och sådär efterosm jag inte har sysslat med det innan, jag är väldigt nybörjare... och säg inte åt mig att ge upp, jag räknar inte med att lyckas, men jag kan komma att lära mig mycket om jag försöker...
Kod: Markera allt
antal = input("hur manga brickor?")
i = 1
while i < antal:
print "hur ser bricka", i, "ut?"
i = i + 1
b = 1
sida1 = input("hur ser sida 1 ut?")
sida2 = input("hur ser sida 2 ut?")
sida3 = input("hur ser sida 3 ut?")
sida4 = input("hur ser sida 4 ut?")
brick1 = (sida1, sida2, sida3, sida4)
mitt problem är att den som heter brick1 måste ändra namn varje gång satsen körs...
SV: skapa variabler med en växande variabel
Postat: 15 aug 2007, 18:15
av Smygis
Ja det går. Hur som helst så skulle en lista vara betydligt mycket smidigare.
Kod: Markera allt
antal = input("hur manga brickor?")
i = 1
while i < antal:
print "hur ser bricka", i, "ut?"
i = i + 1
b = 1
sida1 = input("hur ser sida 1 ut?")
sida2 = input("hur ser sida 2 ut?")
sida3 = input("hur ser sida 3 ut?")
sida4 = input("hur ser sida 4 ut?")
exec("brick%d = (sida1, sida2, sida3, sida4)" % i)
Men jag rekomenderar en lista.
SV: skapa variabler med en växande variabel
Postat: 15 aug 2007, 19:22
av Chippen
jag har aldrig sysslat med listor, hur funkar dem...
jag förstår inte sista raden... kan du förklara den?
SV: skapa variabler med en växande variabel
Postat: 16 aug 2007, 15:25
av Smygis
Chippen skrev:
jag har aldrig sysslat med listor, hur funkar dem...
jag förstår inte sista raden... kan du förklara den?
Strängformatering?
>>> print "Jag heter %s och jag älskar %s som jag har kört i ungefär %.2f år" % ("Robin", "ubuntu", 1.354927472)
Jag heter Robin och jag älskar ubuntu som jag har kört i ungefär 1.35 år
>>>
Ljusnar det?
Och med en lista blir det ungefär såhär:
Kod: Markera allt
antal = input("hur manga brickor?")
i = 1
bricks = []
while i <= antal:
print "hur ser bricka", i, "ut?"
sida1 = input("hur ser sida 1 ut? ")
sida2 = input("hur ser sida 2 ut? ")
sida3 = input("hur ser sida 3 ut? ")
sida4 = input("hur ser sida 4 ut? ")
bricks.append((sida1, sida2, sida3, sida4))
i += 1
sedan kommer man åt de olika brickorna med att skriva bricks[n] där n är 0 <= n <= len(bricks)
SV: skapa variabler med en växande variabel
Postat: 16 aug 2007, 23:15
av Chippen
Hmm... jag läste om det där i min bok häromdan, men lade inte så mycket vikt vid det... jag ska läsa om det imorgon och återkommer
