[pyar] Devolver 2 valores generados por función yield
claudio canepa
ccanepacc en gmail.com
Dom Oct 5 19:08:00 ART 2014
>>> f = make_pi(15)
>>> f.next()
3
>>> f.next()
1
Si quiero de a pares:
f = make_pi(15)
par = (f.next(), f.next())
On Sun, Oct 5, 2014 at 6:26 PM, Mati Barriento <elmatibarriento en gmail.com>
wrote:
> Querida lista, tengo esta funcion que genera "longer" cantidad de cifras
> de Pi
> def make_pi(longer):
> i = -1
> q, r, t, k, m, x = 1, 0, 1, 1, 3, 3
> while i < longer:
> if 4 * q + r - t < m * t:
> i += 1
> yield m
> q, r, t, k, m, x = 10*q, 10*(r-m*t), t, k, (10*(3*q+r))//t -
> 10*m, x
> else:
> q, r, t, k, m, x = q*k, (2*q+r)*x, t*x, k+1,
> (q*(7*k+2)+r*x)//(t*x), x+2
>
> Lo que necesito es consumir 2 veces la funcion para devolver un par de 2
> cifras, es decir: '14', '15' etc, y asi la cantidad que "longer" haya
> definido (o longer x2)
>
> trate de:
> x = next(make_pi(longer))
> y = next(make_pi(longer))
> return tuple([x,y])
>
> pero devolvia 2 veces el mismo numero....
>
> Uso python 3.3
>
> GRACIAS!!
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20141005/cf8cbe0d/attachment.html>
More information about the pyar
mailing list