【发布时间】:2020-05-04 14:00:14
【问题描述】:
我对python中的类有点乱,我从网上得到一个类代码,但是当我对代码进行更改时,我得到了错误
语法错误:非默认参数遵循默认参数。
按照下面的代码:
class button():
def __init__(self, color, x, y, width, height, text='',color_font): #the problem is color_font argument
self.color = color
self.x = x
self.y = y
self.width = width
self.height = height
self.text = text
self.color_font = color_font
为什么会出现这个错误?我在 __init__ 函数中引用了 color_font,因此它应该在这个链接后面起作用:https://www.w3schools.com/python/python_classes.asp
【问题讨论】:
-
因为
color_font是一个非默认参数,它跟在text之后,这是一个默认参数(='')。 -
这与类无关,任何类型的函数定义都会出现同样的问题。
-
@jasonharper 什么是非默认参数?
-
我建议保持
font_color最右边,看我的回答。 -
@LucasVital 错误不是说 non-default parameter 而是 non-default argument -- arguments 是你传递给函数的值,当你调用它,如果你不传递参数,python 会尝试为给定参数找到一个默认参数。
标签: python