[Python-de] Problem mit random.randrange

Martin Künstner m.kuenstner at web.de
Don Feb 5 20:16:52 CET 2004


Hallo zusammen,

ich versuch gerade den Einstieg in das Programmieren 
anhand von
How to Think Like a Computer Scientist
Learning with Python 
zu finden. 
Bis jetzt ging alles ganz gut.

Nun geht es hier darum ein Kartenspiel mit hilfe der
Funktion 
randdom.randrange(0, len[self.cards))
zu mischen.

Lasse ich nun das Skript laufen bekomme ich folgende Fehlermeldung:
Traceback (most recent call last):
  File "./kartenspiel.py", line 130, in ?
    deck.shuffle()
  File "./kartenspiel.py", line 64, in shuffle
    import random
  File "/usr/lib/python2.1/random.py", line 639, in ?
    _inst = Random()
  File "/usr/lib/python2.1/random.py", line 119, in __init__
    self.seed(x)
  File "/usr/lib/python2.1/random.py", line 144, in seed
    a = long(time.time() * 256)
AttributeError: 'time' module has no attribute 'time'

hier ist der Code  mit der definition von shuffle()

class Deck:
	def __init__ (self):
		self.cards = []
		for suit in range(4):
			for rank in range (1, 14):
				self.cards.append (Card (suit, rank ))
	
	def __str__( self ):
		s = ""
		for i in range (len ( self.cards )):
			s = s + " "*i + str ( self.cards[i] ) + "\n"
		return s
	
	def shuffle(self):
		import random
		nCards = len (self.cards)
		for i in range (nCards):
			j = random.randrange(0, nCards)
			self.cards[i], self.cards[j] = self.cards[j], self.cards[i]


Ich verwende
Python 2.1.1 (#1, Sep 24 2001, 05:28:47)
[GCC 2.95.3 20010315 (SuSE)] on linux2

Kann mir jemand weiter helfen?
Danke im Vorraus!

Martin Künstner
_____________________________
mailto:m.kuenstner at web.de