[python] Skladani tuple

Jan Jakubuv jakubuv na gmail.com
Čtvrtek Červen 28 17:27:21 CEST 2007


zdravim,

elegantni reseni nabizi funkcionalni pristup a funkce map.

T2 = tuple(map(lambda x: (x[0], transform(x[1])), T1))

zrejme nejhezci reseni pak lze ziskat pokud funkce transform bude brat
jako parametr celou dvojici a ne jenom druhy prvek, cili neco jako:

def transform2(x):
    return (x[0], transform(x[1]))

pak staci:

T2 = tuple(map(transform2, T1))

honza.


28.6.07, Petra Javornicka <petra.javornicka na gmail.com>:
> Ahoj,
>
>
> ucim se Python a nedari se mi transformat obsah jedne tuple do jine. napr.
> mam
>
>  T1 = (('a','aa'),('b','bb'),('c','cc'))
>
> Jestli jsem si to zapamatovala, tak T1 je immutable, takze bych ji
> potrebovala
> prohnat nejakou transformaci napr.
>
> for T in T1:
>      T2 = T2, (T[0],transform(T[1]))
>
> ale nevim, jak inicializovat T2 na skutecne prazdnou tuple. Kdyz pouziju
> T2 := () nebo T2 None, tak ta vysledna T2 vypada:
>
> T2 = ((),('a','aa'),('b','bb'),('c','cc')) nebo T2 =
> (None,('a','aa'),('b','bb'),('c','cc'))
>
> zkratka to tam vzdycky na zacatku "prekazi"
>
> Poradi mi prosim nekdo, jak se to v Pythonu dela?
>
>
> Dik, Petra
>
>
>
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>


Další informace o konferenci Python