-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcard.py
66 lines (65 loc) · 1.62 KB
/
card.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import random
class card(object):
def __init__(self,suite,face):
self._suite=suite
self._face=face
@property
def face(self):
return self._face
@property
def suite(self):
return self._suite
def __str__(self):
if self.face==1:
face_str='A'
elif self.face==11:
face_str='J'
elif self.face==12:
face_str='Q'
elif self.face==13:
face_str='K'
else:
face_str=str(self._face)
return '%s%s'%(self.suite,face_str)
def __repr__(self):
return self.__str__()
class poker(object):
def __init__(self):
self._cards=[card(suite,face)
for suite in ['♠','♣','♦','♥']
for face in range(1,14)]
self._current=0
@property
def cards(self):
return self._cards
def wash(self):
self._current=0
random.shuffle(self._cards)
@property
def next(self):
card=self._cards[self._current]
self._current+=1
return card
class player(object):
def __init__(self,name):
self._name=name
self._currentCards=[]
@property
def name(self):
return self._name
def get(self,card):
self._currentCards.append(card)
@property
def currentCards(self):
return self._currentCards
def main():
p=poker()
p.wash()
u=[player('DescentDD'),player('A'),player('B'),player('C')]
for _ in range(13):
for i in u:
i.get(p.next)
for i in u:
print(i.name+':',end='')
print(i.currentCards)
main()