【发布时间】:2021-02-19 15:03:00
【问题描述】:
我尝试将参数传递给类中的函数,通常当我将参数传递给函数时,我可以使用未解析的属性,如下所示:
def noodle(spices):
print(f"noodle with {spices})
根据我在使用该功能时选择输入的香料,该香料将在打印功能中使用,如下所示:
noodle(salt)
noodle with salt
但是当我尝试在课堂上做同样的事情时,pycharm 告诉我参数“玩家”未解决,我似乎无法在课堂外做同样的事情,在这里是我遇到问题的代码:
from turtle import Turtle
class Paddle(Turtle):
def __init__(self):
super().__init__()
self.player1 = Turtle('square')
self.create_paddle(self.player1)
def create_paddle(self, player):
self.player.penup()
self.player.color('white')
self.player.shapesize(stretch_wid=1, stretch_len=0.5)
我希望能够创建多个桨并重用该功能,但我的方法似乎不起作用,我不明白为什么
【问题讨论】:
-
player是create_paddle()的参数,而不是实例属性,因此您只需将其称为player。没有像self.player这样的东西被赋值。 -
@jasonharper 同意 除非
player不应该是一个论点,create_paddle应该引用self.player1。无论哪种情况,都可以轻松解决 -
我想过,但我实施错了,在你说我删除了自我之后。在播放器后面,它似乎工作正常:)