Foros del Web » Programando para Internet » Python »

¿Que diferencia hay entre randint y randrange?

Estas en el tema de ¿Que diferencia hay entre randint y randrange? en el foro de Python en Foros del Web. Pues eso. Ambas funciones del modulo random generan números aleatorios. Y por lo que llevo leyendo ( y aquí es donde igual me equivoco ), ...
  #1 (permalink)  
Antiguo 07/12/2011, 14:18
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 14 años, 4 meses
Puntos: 9
¿Que diferencia hay entre randint y randrange?

Pues eso. Ambas funciones del modulo random generan números aleatorios. Y por lo que llevo leyendo ( y aquí es donde igual me equivoco ), creo que randint permite dos argumentos y randrange uno.

Osea:

random.randint (0,40) # da un número aleatorio del 0 al 39

Pero:

random.randrange (40) # también da un resultado parejo ¿No?
  #2 (permalink)  
Antiguo 07/12/2011, 14:34
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ¿Que diferencia hay entre randint y randrange?

Del manual:
Cita:
random.randrange([start], stop[, step])
Return a randomly selected element from range(start, stop, step). This is equivalent to choice(range(start, stop, step)), but doesn’t actually build a range object.

random.randint(a, b) Return a random integer N such that a <= N <= b.
randint devuelve un entero entre a y b
ranrange devuelve un elemento al azar de la lista range(a, b, paso), lo cual es más o menos lo mismo en muchos casos pero no es igual.

primero que nada, randint da un número <= b, mientras que randrange da < b por la definición de range(). Luego, que si usas el tercer parámetro generarás una lista de elementos salteados:

range(0, 10, 2) => [0, 2, 4, 6, 8]
randrange te devolvería un elemento al azar de esta lista.


saludos.
  #3 (permalink)  
Antiguo 09/12/2011, 11:33
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 14 años, 4 meses
Puntos: 9
Respuesta: ¿Que diferencia hay entre randint y randrange?

Gracias por la ayuda. Pero deberé estudiar un poco más por que aún no lo acabo de pillar...

Etiquetas: diferencia
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:03.