不!!!建立一个不会VariableBox
帮助你!
只需使用您想要的 var,无论它适用于何处。如果你有太多的全局变量,那么什么应该被认为是全局的,什么应该与特定的结构有关,这是一个相当大的问题。甚至难以命名变量或创建数组,而不是var1, var2, var3, ...
.
类是为构建对象而设计的,即,用于创建具有不同特性但具有相同基础的事物。有价值的类在某种程度上定义了一个实体,以及这个实体的主要行为。
编辑:
Python 不提供可见性约束,因此您无法通过简单地将数据填充到类中来保护数据;可以从类实例所在的任何地方访问条目。
创建 getter 或简单地维护一个类的实例只是决定使用哪个类的问题。为了清楚起见,最好为您的游戏制作一个控制器,这将在游戏资产和游戏玩法之间建立这个界面。
例如,在执行期间,您可以:
class Controller:
def __init__():
self.turn = 0
self. ...
def begin():
self.turn += 1
self.opening_scene()
class Gameplay:
def __init__(self, num_players, turn, ...):
self.turn = turn # if it happens you want to use this value in the game
self.num_player = num_players
# Main loop
controller = Controller()
controller.num_players = int(raw_input("Number of players: "))
gameplay = Gameplay(controller.num_players, controller.turn)
while True:
if gameplay.action == ...:
elif ...:
...
elif *next turn*:
controller.next_turn() # to set things up to next turn
else ...:
...
在内部Controller
,您可以聚合相关信息,因此您不会在即将到来的函数中拥有无穷无尽的参数列表。
无论如何,我无法告诉您哪个最好用;有很多人在研究这些模块化问题,而我不是其中之一,所以这只是我对在您的应用程序上可以做得很好的观点。