Portál AbcLinuxu, 1. června 2025 02:55
i=0 while i!=5 tmp(i)=10 i +=1Tým pádom mi vznikne tmp0, tmp1, tmp2, tmp3, tmp4 kde každému bude priradená hodnota 10. Problémom je, že mi to nechce tú variabilnú neznámu spraviť. Dopátral som sa iba k tomu, že niekdo to rieši cez slovník, ale chcem sa uistiť že či to nejde aj ľahšie. Vďaka
tmp ma byt pole(seznam)?
Python pouziva pro pole hranate zavorky []
Pokud jde jen o inicializaci pole tmp na pet polozek a kazda polozka ma obsahovat 10, tak staci tento vyraz v Pythonu:
tmp = [10] * 5
>>> i = 3 >>> globals()["tmp%d" % i] = 10 >>> print tmp3 10Takové prasárny ale prosím nedělej. Pokud to jde vyřešit polem nebo slovníkem, vyřeš to polem nebo slovníkem. I seznam lokálních nebo globálních proměnných je v podstatě slovník. Atributy objektů lze nastavovat pomocí setattr. Také můžeš v případě opravdu nejvyšší nouze použít eval.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.