python - Python:为什么控制台向我显示错误接受参数?
问题描述
我是一个新的python程序员,我正在练习对象编程..我有下一个代码:
class Vehiculos():
def __int__(self, marca1, modelo1):
self.marca = marca1
self.modelo = modelo1
self.enmarcha = False
self.acelera = False
self.frena = False
def arrancar(self):
self.enmarcha = True
def acelerar(self):
self.acelera = True
def frenar(self):
self.frena = True
def estado(self):
print("La marca es:", self.marca1)
print("El modelo es: ", self.modelo1)
class Moto(Vehiculos):
pass
mimoto = Moto("BMW", "CR1")
mimoto.estado()
控制台向我展示:
Traceback (most recent call last):
File "herencia_new_file.py", line 31, in <module>
mimoto = Moto("BMW", "CR1")
TypeError: Moto() takes no arguments
苏,我想知道怎么了?因为我在一门课程中看到代码和老师完美地工作
解决方案
__int__
首先,您在(应该是)中有一个错字__init__
,此外,您在方法中还有另一个错误estado
,您正在访问属性marca1
以及modelo1
何时应该访问marca
and modelo
:
class Vehiculos():
def __init__(self, marca1, modelo1):
self.marca = marca1
self.modelo = modelo1
self.enmarcha = False
self.acelera = False
self.frena = False
def arrancar(self):
self.enmarcha = True
def acelerar(self):
self.acelera = True
def frenar(self):
self.frena = True
def estado(self):
print("La marca es:", self.marca)
print("El modelo es: ", self.modelo)
class Moto(Vehiculos):
pass
mimoto = Moto("BMW", "CR1")
mimoto.estado()
"""
La marca es: BMW
El modelo es: CR1
"""
推荐阅读
- javascript - 使用js的倒数计时器
- bash - 如何递归地将唯一标识符附加到bash中的一系列相同字符串?
- jquery - 下拉选择更改以更新 ASP.NET MVC 中的数据库
- r - R:为什么在循环体中循环索引/计数器的可访问性方面,while 和 for 循环不同?
- javascript - 单击两次以获取javascript中的源属性
- amazon-cognito - 在启用 MFA 的情况下进行模拟
- azure - 将 docker 机密传递给 azure Web 应用程序时出错'没有这样的文件或目录:'/run/secrets/'
- python - asammdf 出错:“错误:解包需要 56 字节的缓冲区”
- java - Swing GUI 不能从计算机扩展到计算机
- javascript - 在 Gatsby JS 中以编程方式创建页面时如何区分某些内容