Python - Juego de cartas 7 y media .

 
Vista:
sin imagen de perfil
Val: 28
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

Juego de cartas 7 y media .

Publicado por Temukoç (8 intervenciones) el 18/02/2021 22:32:03
Estoy desarrollando un juego de cartas (7 y media ) .
Como aún me falta conocimiento estoy desarrollando mis propias idea y buscando línea de código que me ayuden a aprender. De momento tengo esto :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import random
 
valor = ["A","2","3","4","5","6","7","J","Q","K"]
color = ["espadas","copas","oros","bastos"]
baraja = []
 
for v in valor:
    for c in color:
        carta = "{}  de  {}".format(v,c)
        baraja.append(carta)
random.shuffle(baraja)
print(baraja)
 
jug = []
jug1 = []
 
jug.extend([baraja.pop(), baraja.pop()])
jug1.extend([baraja.pop(), baraja.pop()])

Mi duda es la siguiente, en la sección de código donde creamos la baraja , el codigo,
baraja.append(carta)

¿La función de append es asignar todas las cartas a la baraja?

Y en la parte de asignar a cada jugador dos cartas. ¿Qué función tiene la función extend ?

El funcionamiento del programa es que jug eres tu, y a continuación te pida si quieres otra carta o te plantas. Cada figura (j,q,k) vale 0.5 y el resto su valor . Si te pasas de 7.5 pierdes, y en caso contrario se compara con jug1 a ver quien se a quedado mas cerca de 7.5 y se le asigna 1 punto . Lo explico por si alguien ue este aprendiendo quiere sumarse a desarrollarlo . Iré subiendo la evolución y dudas.

Gracias y un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 41
Ha disminuido su posición en 2 puestos en Python (en relación al último mes)
Gráfica de Python

Juego de cartas 7 y media .

Publicado por David (6 intervenciones) el 18/02/2021 22:53:16
Soy novato, pero a ver si te sirve.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import random
 
valor = ["A","2","3","4","5","6","7","J","Q","K"]
color = ["espadas","copas","oros","bastos"]
baraja = []     # a partir de valor y color
                # se generarán todas las combinaciones
                # 10 cartas x 4 palos = 40 cartas
 
# se recorre cada indice en valor
for v in valor:
    # se recorre cada uno de los colores
    for c in color:
        # carta es un string del tipo:
        # {2} de {espadas}
        carta = "{}  de  {}".format(v,c)
        # a baraja que es una lista en blanco se le añade ese string
        # es decir, baraja es una lista (un array) que contiene
        # todos los string con los nombres de cada una de las cartas
        baraja.append(carta)
 
# la función suffle de la liberia random seguramente
# mezcla los elementos de la lista baraja de manera aleatoria
# para que no vayan por orden
random.shuffle(baraja)
# un print para ver como ha quedado
print(baraja)
 
jug = []
jug1 = []
 
# si no entiendes un método busca su definición
# que valor se le pasa, que hace con él y qué dato devuelve
# https://www.programiz.com/python-programming/methods/list/extend
# el método extend de la clase lista añade un elemento
# de tipo iterable (recorrible) como elementos individuales
# va entre baraja.pop(), barabja.pop() va entre [] porque son valores
# que proporcionas como si de una lista de dos elementos se tratase
# esa lista de dos elementos es el iterable.
# el método pop pertenece a los objetos de la clase lista, lo mismo
# que dije antes, si no sabes que hace, puedes buscarlo.
# pop() elimina el último elemento, es decir, la carta que está arriba
# eso hace que ya no pueda volver a salir.
 
jug.extend([baraja.pop(), baraja.pop()])
jug1.extend([baraja.pop(), baraja.pop()])

Mi interpretación por lo que he podido buscar.
append() y extend() se parecen, la diferencia está en que:
Si usas append con una lista, algo como:
append([3,5]), estás añadiendo un único elemento a los ya existentes, y ese elemento es una lista con los valores [3,5]
Si usas extend, esa lista (que es un iterable), la recorre y añade elemento por elemento por separado, sería como:
append(3)
append(5)

Por cierto me ha gustado la idea del juego.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 28
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

Juego de cartas 7 y media .

Publicado por Temukoç (8 intervenciones) el 18/02/2021 23:15:38
Muchas gracias !

Esto intentando diseñar un código que sume los valores de las cartas de cada jugador pero no se me ocurre como darle el valor de 0.5 a las figuras (j,q,k).
¿Se os ocurre como sumar los valores de una lista en la que tengamos valores no numéricos que le queramos dar un valor numérico?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Sonabasstan

Juego de cartas 7 y media .

Publicado por Sonabasstan (1 intervención) el 28/01/2024 20:26:15
Realmente disfruté experimentando con Python en el desarrollo del juego de cartas "7 y media". La facilidad y flexibilidad de Python permitieron crear una experiencia de juego dinámica y entretenida, capturando la esencia del tradicional 7 y media, pero con un toque moderno. Para los aficionados a los juegos de azar y programación, es una combinación perfecta de habilidad técnica y diversión. Además, si te gustan los juegos de casino, te recomiendo explorar https://pinuponlinecasino.mx/slots/gates-of-olympus/. ¡Una excelente opción para seguir disfrutando de juegos emocionantes y novedosos! #Python7yMedia #JuegosDeCartas #PinUpCasino
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar