ssr765_python

Untitled

Dec 10th, 2022
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.78 KB | None | 0 0
  1. CARTA = """╔═════════════╗
  2. ║          {N} ║
  3. ║    {l1}    ║
  4. ║    {l2}    ║
  5. ║    {l3}    ║
  6. ║    {l4}    ║
  7. ║    {l5}    ║
  8. ║    {l6}    ║
  9. ║    {l7}    ║
  10. ║ {N}          ║
  11. ╚═════════════╝"""
  12.  
  13. COLOCACIO = {
  14.     "A": [
  15.         "     ",
  16.         "  S  ",
  17.         " S S ",
  18.         "SSSSS",
  19.         "S   S",
  20.         "S   S",
  21.         "     "
  22.     ],
  23.     "2": [
  24.         "     ",
  25.         "     ",
  26.         "   S ",
  27.         "     ",
  28.         " S   ",
  29.         "     ",
  30.         "     "
  31.     ],
  32.     "3": [
  33.         "     ",
  34.         "    S",
  35.         "     ",
  36.         "  S  ",
  37.         "     ",
  38.         "S    ",
  39.         "     "
  40.     ],
  41.     "4": [
  42.         "     ",
  43.         "S   S",
  44.         "     ",
  45.         "     ",
  46.         "     ",
  47.         "S   S",
  48.         "     "
  49.     ],
  50.     "5": [
  51.         "     ",
  52.         "S   S",
  53.         "     ",
  54.         "  S  ",
  55.         "     ",
  56.         "S   S",
  57.         "     "
  58.     ],
  59.     "6": [
  60.         "     ",
  61.         "S   S",
  62.         "     ",
  63.         "S   S",
  64.         "     ",
  65.         "S   S",
  66.         "     "
  67.     ],
  68.     "7": [
  69.         "     ",
  70.         "S   S",
  71.         "     ",
  72.         "S S S",
  73.         "     ",
  74.         "S   S",
  75.         "     "
  76.     ],
  77.     "8": [
  78.         "     ",
  79.         "S   S",
  80.         "  S  ",
  81.         "S   S",
  82.         "  S  ",
  83.         "S   S",
  84.         "     "
  85.     ],
  86.     "9": [
  87.         "     ",
  88.         "S S S",
  89.         "     ",
  90.         "S S S",
  91.         "     ",
  92.         "S S S",
  93.         "     "
  94.     ],
  95.     "10": [
  96.         "  S  ",
  97.         "S   S",
  98.         "  S  ",
  99.         "S   S",
  100.         "  S  ",
  101.         "S   S",
  102.         "  S  "
  103.     ],
  104.     "J": [
  105.         "     ",
  106.         "    S",
  107.         "    S",
  108.         "    S",
  109.         "S   S",
  110.         " SSS ",
  111.         "     "
  112.     ],
  113.     "Q": [
  114.         "     ",
  115.         " SS  ",
  116.         "S  S ",
  117.         "S  S ",
  118.         "S  S ",
  119.         " SSSS",
  120.         "     "
  121.     ],
  122.     "K": [
  123.         "     ",
  124.         "S  S ",
  125.         "S S  ",
  126.         "SSS  ",
  127.         "S  S ",
  128.         "S   S",
  129.         "     "
  130.     ],
  131. }
  132.  
  133. def mostrar_cartes(ma) -> None:
  134.     """Funció que mostra les cartes del jugador."""
  135.     # Mitjançant una llista, guada les linies de totes les cartes a aquesta per
  136.     # mostrarles totes juntes.
  137.     linies_print = ["", "", "", "", "", "", "", "", "", "", ""]
  138.     for carta in ma:
  139.         numero, simbol = carta
  140.         # Soc conscient que es una mica "chapuza" pero no se m'ha ocurregut res
  141.         # millor.
  142.         carta_formatada = CARTA.format(
  143.             # Afageix un espai si el número de la carta es un sol caràcter.
  144.             N=f"{numero} " if numero != "10" else numero,
  145.             # Agafa cada linia de cada posicio segons el número i reemplaça les
  146.             # 's' per el símbol corresponent.
  147.             l1="".join([x if x == " " else simbol for x in COLOCACIO[numero][0]]),
  148.             l2="".join([x if x == " " else simbol for x in COLOCACIO[numero][1]]),
  149.             l3="".join([x if x == " " else simbol for x in COLOCACIO[numero][2]]),
  150.             l4="".join([x if x == " " else simbol for x in COLOCACIO[numero][3]]),
  151.             l5="".join([x if x == " " else simbol for x in COLOCACIO[numero][4]]),
  152.             l6="".join([x if x == " " else simbol for x in COLOCACIO[numero][5]]),
  153.             l7="".join([x if x == " " else simbol for x in COLOCACIO[numero][6]]),
  154.         )
  155.        
  156.         # Suma les linies de la carta actual a les que ja hi havien.
  157.         for x in range(len(carta_formatada.split("\n"))):
  158.             linies_print[x] += carta_formatada.split("\n")[x] + " "
  159.  
  160.     print("\n".join(linies_print))
  161.    
  162. mostrar_cartes([("2", "♥"), ("10", "♣"), ("Q", "♦"), ("A", "♣"), ("5", "♠")])
Advertisement
Add Comment
Please, Sign In to add comment