Requisitos previos: clases y objetos de Python
Acercarse:
- Para barajar la baraja de cartas necesitamos usar el módulo de barajar .
- Importar el módulo requerido
- Declare una clase llamada Cards que tendrá variables suites y valores , ahora en lugar de usar self.suites y self.values , las declararemos como variables globales.
- Declare una baraja de clase que tendrá una lista vacía llamada mycardset , y las suites y los valores se agregarán a la lista mycardset .
- Declare una clase ShuffleCards junto con un método llamado shuffle() que verifique la cantidad de cartas y luego las baraje.
- Para eliminar algunas tarjetas, crearemos un método popCard() en la clase ShuffleCards .
A continuación se muestra el programa completo basado en el enfoque anterior:
Python3
# Import required modules from random import shuffle # Define a class to create # all type of cards class Cards: global suites, values suites = ['Hearts', 'Diamonds', 'Clubs', 'Spades'] values = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K'] def __init__(self): pass # Define a class to categorize each card class Deck(Cards): def __init__(self): Cards.__init__(self) self.mycardset = [] for n in suites: for c in values: self.mycardset.append((c)+" "+"of"+" "+n) # Method to remove a card from the deck def popCard(self): if len(self.mycardset) == 0: return "NO CARDS CAN BE POPPED FURTHER" else: cardpopped = self.mycardset.pop() print("Card removed is", cardpopped) # Define a class gto shuffle the deck of cards class ShuffleCards(Deck): # Constructor def __init__(self): Deck.__init__(self) # Method to shuffle cards def shuffle(self): if len(self.mycardset) < 52: print("cannot shuffle the cards") else: shuffle(self.mycardset) return self.mycardset # Method to remove a card from the deck def popCard(self): if len(self.mycardset) == 0: return "NO CARDS CAN BE POPPED FURTHER" else: cardpopped = self.mycardset.pop() return (cardpopped) # Driver Code # Creating objects objCards = Cards() objDeck = Deck() # Player 1 player1Cards = objDeck.mycardset print('\n Player 1 Cards: \n', player1Cards) # Creating object objShuffleCards = ShuffleCards() # Player 2 player2Cards = objShuffleCards.shuffle() print('\n Player 2 Cards: \n', player2Cards) # Remove some cards print('\n Removing a card from the deck:', objShuffleCards.popCard()) print('\n Removing another card from the deck:', objShuffleCards.popCard())
Producción:
Publicación traducida automáticamente
Artículo escrito por sabafreen84 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA