【发布时间】:2014-07-22 12:49:34
【问题描述】:
所以我最近开始使用 python。我正在做一个涉及课程的小项目。在大多数情况下,我已经习惯了使用 self... 等。我还没有弄清楚可能与我的问题有关的名称修饰。
这里有一些代码组成了一个类来创建一个回合对象,我可以在战斗开始时启动它并允许我定期切换回合。 (游戏将是一个口袋妖怪战斗模拟器)
class turn:
TURNS = ("player","computer")
curr=0
def __init__(self):
self.currentTurn=turn.TURNS[turn.curr]
def getTurn(self):
return turn.TURNS[turn.curr]
def switch(self):
if turn.curr == 0:
turn.curr = 1
else:
turn.curr = 0
if turn.curr==0:
print "It's your move! \n"
self.currentTurn=TURNS[turn.curr]
所以我的问题是这样的:
python 是否有任何功能可以让我在引用类变量时省略类名。我觉得它应该知道在类定义中查找这些变量,但事实并非如此。另外,如果我想在同一个类中使用辅助方法,我似乎必须在前面加上 self.
这里面还有吗?
【问题讨论】:
-
Martjin,当您为我修复错误时,我正在编辑,谢谢。当我尝试制作“turn”的所有实例时,SO 编辑器为我添加了这些星星。粗体
-
"显式优于隐式。"像这样接受 Python 的教条。对您来说可能看起来不错的功能对于下一个试图理解您的代码的开发人员来说可能会遇到很多麻烦。
-
@user3756732:不支持在代码块中格式化;在代码块之外
**使事情变得大胆。