Constructor problem

Robert Kern rkern at
Fri Oct 29 00:09:49 CEST 2004

Nick wrote:

> class Deck2:
>     def __init__(self):
>         self.deck = 52 * [Card()]

Here you are creating a single Card instance and putting the same object 
into a list 52 times. Each slot in the list points to the same object.

Another lesson to take away from this: Don't optimize prematurely. The 
simplest implementation should be fine unless proven otherwise via 

Robert Kern
rkern at

"In the fields of hell where the grass grows high
  Are the graves of dreams allowed to die."
   -- Richard Harter

More information about the Python-list mailing list