[python] Pole
Jaroslav Pachola
j_p na centrum.cz
Pátek Listopad 25 14:07:16 CET 2005
Ahoj,
Dne Friday 25 November 2005 14:02 slacker napsal(a):
>
.: smilelover :. wrote:
> > Zdravim,
> > rad bych vedel, jak pouzivat v Pythonu uplne obycejna pole stylem:
> >
> > kwTable["s"]["x1"] = "e"
> > kwTable["s"]["x2"] = "p"
> >
> > hlasi mi, ze nemam promenou definovanou, ale at jsem to zkousel
> > jakkoliv, nepodarilo se mi ji inicializovat.
> > Ne bo se da tenhle zapis nahradit akorat pomoci slovniku/seznamu?
> > Potrebuju timto stylem napsat prechodovou tabulku pro konecny automat.
>
> Na tohle asi bude nejlepsi pouzit slovnik napr. takto:
>
> kwTable = dict()
>
> kwTable[("s","x1")] = "e"
> kwTable[("s","x2")] = "p"
>
>
> slacker
dalsi moznost je
kwTable = {}
kwTable.setdefault("s", {})["x1"] = "e"
kwTable.setdefault("s", {})["x2"] = "p"
- to nevypada moc esteticky, ale zato to ma pravdepodobne pozadovane chovani.
Treti moznost je udelat si pro kwTable vlastni tridu, v metode __getitem__()
si zaridit, aby se v pripade potreby vytvoril prazdny slovnik no a pak uz
muzes klidne psat.
kwTable = MyKwTable()
kwTable["s"]["x1"] = "e"
kwTable["s"]["x2"] = "p"
JP
Další informace o konferenci Python