Buscar dentro de una lista y obtener al azar un resultado

Hola necesito obtener de una lista de preguntas y respuestas una de ellas al azar, para luego poder mostrarla en pantalla… pero no se me ocurre como hacerlo…Alguna idea?

desde ya muchas gracias.

hola prueba esto:

tu_numero=pilas.azar(0,20)

tu_numero es la variable y el rango del numero al azar es de 0 a 20.

crea una matriz con varias preguntas y despues las puedes llamar con tu_numero

ej:

ListaPreguntas=[[“de que color es la banana”,“roja”,“verde”,“amarilla”],[“cuantas patas tiene un perro”,“dos”,“cuatro”,“una”]…etc,etc

1 Like

Hice lo siguiente:

import random

preguntas = [“Cuantos continentes existen?”,“3”,“6”,“5”],[“Cuantas son las provincias argentinas?”,“20”,“24”,“23”]
elegirP = random.choice(preguntas)
texto = pilas.actores.Texto(elegirP[0])
texto.y = 170
res1 = pilas.actores.Texto(elegirP[1])
res1.x = -200
res1.y = 15
res2 = pilas.actores.Texto(elegirP[2])
res2.x = 0
res2.y = 15
res3 = pilas.actores.Texto(elegirP[3])
res3.x = 200
res3.y = 15

De esta forma logre que salga una pregunta al azar… el tema es que aveces se repite la pregunta… me gustaria que esto no pasara como puedo hacer?

pd: Lo hice de esta forma porque esa que mencionaste no me salio. Que representa el 0 y el 20? ¿es solo para numeros pilas.azar?

1 Like

pilas azar te tira un valor que se encuentra de 0 al 20 lo que no estoy seguro si es el 20 inclusive( tendrias que hacer unas pruebas para verlo)
por otro lado para hacer que el numero no se repita tendrias que en primer lugar almacenar los numeros para poderlos comparar unos con otros ej:

CantidadDeNumeros = 20      # coloca aqui la cantidad de numeros que quieres buscar
Rango=50                    # Coloca aqui el rango maximo para la busqueda de numeros
ListaNumeros=[]
if contador != CantidadDeNumeros:
   numero=pilas.azar(0,Rango)
   if numero not in ListaNumeros:
        ListaDatos.append(numero)
        ListaAuxiliar.append(numero)
        contador +=1

# estas lineas te tendrian que arojar un listado de numeros al azar no repetidos!!!

buena suerte con tu juego :smile:

1 Like

Muchas gracias por responder. Yo pregunta por el pilas.azar para saber si era solo para números, pero en realidad necesito buscar dentro de una lista textos con sus respuestas como lo mostré mas arriba pero que no se vuelvan a repetir.

1 Like

gracias me re contra sirvio, justo yo tenia esta misma duda tambien pues estoy haciendo un juego de preguntasy respuestas y se me habia ocurrido la misma idea de listar una pregunta en la posicion 0 seguido de 3 respuestas, entre ellas la correcta, dentro de otra lista, la cuestion mia seria conectar las preguntas con el resultado para que me de correcto y pasar a otra pregunta al azar sin ser la misma y la tercera tambien sin ser la misma primera y segunda pergunta anterior… pero igual me sirvio muchisimo, si llego a terminarlo al juego lo subo para que lo vean …

tendrias que buscar la forma de que cuando pilas te pregunte lo que escoge en una lista al azar que esa lista dentro de esa lista sea borrada para cuando pilas la proxima vez te pregunte elija de lo que haya quedado en la lista…