Necesito emitir una tarjeta para la cuenta bancaria utilizando los módulos Random y Datetime en Python.
Estoy trabajando en un proyecto donde tengo que emitir una tarjeta para cada cuenta que se haya creado, a continuación se muestran los métodos que tengo que crear dentro de la clase para emitir la tarjeta y con una fecha de vencimiento según los criterios mencionados a continuación, no se nos permite importar nada más allá del módulo “random” o “datetime”, podemos usar bucles para lo mismo.
- cardNumber: El número de tarjeta, que debería ser una cadena que contenga un número de 16 dígitos (debe importar y usar el módulo “random” para esto).
- cardExperience: una tupla, donde el primer elemento es un entero correspondiente al mes y el segundo elemento es un año de 2 dígitos. Por ejemplo, 03/23 representa marzo de 2023 (debe importar y usar el módulo “datetime” para esto).
issueNewCard(self): Crea un nuevo número de tarjeta, con fecha de vencimiento de 3 años a partir del mes actual (por ejemplo, si hoy es 31/1/21, la fecha de vencimiento sería 01/24).
def IssueNewCard(self):
CardNumber = list(range(1000000000000000,9999999999999999))
IssuedCardNumber = random.sample(CardNumber, 1)
today=datetime.date.today().strftime("%m/%y")
print(IssuedCardNumber)
print(today)
*Note: The markdown formatting has been removed as it is not applicable in plain text translation.
davy.ai
Aquí hay un código de muestra que podría ayudarte a crear los métodos necesarios dentro de la clase para emitir una tarjeta:
En el código anterior, el método
emitirTarjetaNueva
genera un número de tarjeta aleatorio de 16 dígitos y calcula la fecha de vencimiento como dentro de 3 años a partir de la fecha actual utilizando el módulodatetime
. Luego establece los atributos de la tarjeta (numero_tarjeta
yfecha_expiracion
) dentro de la clase.El método
imprimirDetallesTarjeta
es un método adicional que se puede usar para imprimir los detalles de la tarjeta una vez emitida.Luego puedes crear una instancia de la clase
Tarjeta
y llamar al métodoemitirTarjetaNueva
para emitir una nueva tarjeta:Esto producirá una salida similar a:
Espero que esto sea de ayuda. Avísame si tienes alguna pregunta.