我正在学习Python 2.7,并编写一个文本冒险游戏(类似于Zork)来进行练习。我决定尝试以模块化的方式编写它,因为会有很多函数可以分离成不同的文件以便于组织和清晰度。
在Windows 7上使用Visual Studio 2015,我创建了一个包含3个文件的解决方案:MainGame.py、Session.py和Verbs.py。
当我运行这个时,出现以下错误:
在showX内调用getX方法时,我期望不需要传递任何参数,但实际上却传递了参数。我的问题是:我传递了什么?这种情况有什么问题?
在Windows 7上使用Visual Studio 2015,我创建了一个包含3个文件的解决方案:MainGame.py、Session.py和Verbs.py。
- MainGame.py是运行游戏的主要Python文件。
- Session.py是一个类文件,其实例存储玩家信息。
- Verbs.py用于分析玩家输入的函数。
Main.py
from Session import Session
from verbs import showX
s = Session()
showX(s)
Session.py
class Session(object):
def __init__(self):
x = 5
def getX():
return x
Verbs.py
def showX(s):
print s.getX()
当我运行这个时,出现以下错误:
TypeError was unhandled by user code
getX() takes no arguments (1 given)
在showX内调用getX方法时,我期望不需要传递任何参数,但实际上却传递了参数。我的问题是:我传递了什么?这种情况有什么问题?