contrato de algunas fuciones en python
Chema Cortes
py en ls-l.org
Mar Mayo 3 19:50:52 CEST 2005
Juan Francisco Mosquera Hurtado <juanmosquera <at> puj.edu.co> writes:
>
> hola muchachos
> gracias por la accesoria que siempre me brindan en esta lista
> les escribo para saber como
> usar
> foldr
> map
> lambda
> map
> foldl
> apply
> todas las use en scheme están definidas en python como las uso y con que las
> puedo usar listas tuplas cadenas cuales me permiten pasarle una función como
en scheme
> lambda((x) x*x/6 )
> donde x son listas
> muchas gracias Juan francisco
Efectívamente, en python encontrarás algunas de estas funciones; lo que ocurre
es que no se suelen utilizar mucho. Se está recomendado pasar a utilizar lo que
se conoce como "compresiones" de listas. En cuanto a las funciones lambda se
vuelve innecesarias e incluso se desaconsejan utilizarlas, ya que puedes
emplear en su lugar cualquier función definida.
Por ejemplo, algunas equivalencias entre scheme y python:
(foldl f x lst) --> reduce(f, lst, x)
(foldr f x lst) --> reduce(f, lst[::-1], x)
(apply f args) --> f(*args)
(map f lst1 lst2 ...) --> map(f,lst1,lst2,...)
(map f lst) --> [f(x) for x in lst]
(filter f lst) --> filter(f,lst)
(apply g (filter f lst)) --> [g(x) for x in lst if f(x)]
Además tienes las funciones zip y enumerate que seguro te valdrán para muchas
cosas.
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es