如果我单击“ p”,则打开文件

时间:2019-01-05 15:00:16

标签: python

我正在尝试在一个主文件中运行不同的文件...因此,当我单击“ p”时,我应该能够打开另一个文件并在其中播放...但是当我执行此操作时,总是出现错误消息...

def play(self):
    with open("TheUltimatePONG.py", "r") as the_file:
        self._outputArea.insert("1.0", the_file.read())

wn.onkey(play, "p")
wn.listen()

出现错误:

TypeError: play() missing 1 required positional argument: 'self'

我不明白这是什么意思。

1 个答案:

答案 0 :(得分:1)

错误消息非常明确:

TypeError: play() missing 1 required positional argument: 'self'

意味着您的play()函数已定义为期望有一个self参数,但在实际调用时未传递。


如果wn.onkey(play, "p")建立了一个不带任何参数调用play()的回调,则不要定义它以期望有一个self参数!

也就是说,更改:

# This takes a "self" argument, which usually only makes sense for methods, not functions.
def play(self):

收件人:

# This version does not expect any arguments at all.
def play():