如何在python中命名和创建类的多个实例?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在python中命名和创建类的多个实例?相关的知识,希望对你有一定的参考价值。
我是编程和学习OOP的新手。我想创建一副扑克牌,所以我创建了一个名为Card的类,其中包含number属性和suit属性。然后我想创建一个包含该类的52个实例的列表来制作套牌。我也希望他们每个人都被命名为“2_spades”,“3_spades”,“4_spades”等,但显然不想手动完成。
当我使用for循环创建列表并打印列表时,它打印了实例的内存位置,这是可以理解的,因为我没有命名实例。所以我试图将str dunder方法添加到类中,该类返回实例的数字和套装。但它没有用。
class Card:
def __init__(self, number, suit, trump='not the trump'):
self.number = number
self.suit = suit
self.trump = trump
def make_trump(self):
self.trump = 'the trump'
def remove_trump(self):
self.trump = 'not the trump'
def __str__(self):
return f'{self.number} of {self.suit}'
suits = ['spades', 'hearts', 'clubs', 'diamonds']
deck = []
for Suit in suits:
for i in range(13):
deck.append(Card(i. Suit))
print(deck)
当我打印甲板时,它为每个人提供了记忆位置。
如何创建类卡的多个实例并通过number_suit或self.number_self.suit命名每个实例?
以上是关于如何在python中命名和创建类的多个实例?的主要内容,如果未能解决你的问题,请参考以下文章
python基础 13 类命名空间于对象实例的命名空间,组合方法