use*_*661 3 python oop encapsulation
所以我正在开发一个基本的文字游戏,你用它来处理一个字母的"手"(字典对象),用来创建单词并获得积分.
这个"手"用于许多功能的参数:计算玩家的分数,在玩家使用一个或多个字母后更新手中的字母数,显示手,检查玩家单词的有效性,等等
从我读过的所有内容中,我知道如果可以的话我应该避免使用全局变量(尽管我还不完全确定原因).
那么我可以将其他一般方法用于许多使用"hand"作为参数的函数?
使用类封套...见下文...游戏意识到双手
class Hand:
def __init__(self):
num_cards = 7
self.cards = ["a" for i in range(num_cards)]
class Game:
def __init__(self,num_hands=2):
self.hands = [Hand() for i in range(num_hands)]
self.current_turn = 0
def play(self):
self.hands[self.current_turn].play()
self.current_turn = (self.current_turn+1)%len(self.hands)
Run Code Online (Sandbox Code Playgroud)
这是Python 3代码; Python 2中的类应该派生自object.
......虽然他们不需要.如果不这样做,他们会失去一些功能
| 归档时间: |
|
| 查看次数: |
182 次 |
| 最近记录: |