python - __init__() 缺少 4 个必需的位置参数
问题描述
我已经创建了这段代码,但我不断收到错误:TypeError:init () 缺少 4 个必需的位置参数:'x'、'y'、'r' 和 'color'。任何想法?请
这是我下面的代码:
import math
class objeto:
def __init__(self,x, y, r, color):
self.x = x
self.y = y
self.r = r
self.color = color
def colicionEntre(self,pelota):
distancia = math.sqrt(pow(self.x-pelota.x,2)+pow(self.y-pelota.y,2))
radios = self.r + pelota.r
cad = "La pelota " + self.color + " y la pelota " + pelota.color
if(distancia<radios):
cad = cad + " si colicionan"
else:
cad = cad + " no colicionan"
return cad
def procesarLista(self,listaPelotas):
for i in range(len(listaPelotas)):
for x in range(i,len(listaPelotas)):
if(listaPelotas[i]!=listaPelotas[x]):
print(listaPelotas[i].colicionEntre(listaPelotas[x]))
pelota = objeto(3,4,2,"Amarilla")
pelota2 = objeto(5,5,1,"Verde")
pelota3 = objeto(2,2,1,"Roja")
pelota4 = objeto(1,1,1,"Azul")
lista = [pelota,pelota2,pelota3,pelota4]
objetoObj = objeto()
objetoObj.procesarLista(lista)
解决方案
class objeto:
def __init__(self,x, y, r, color):
您的课程需要 4 个参数,但是当您调用它时:
objetoObj = objeto()
你没有给它任何论据。尝试提出论点(它们可能是None
)
推荐阅读
- javascript - JavaScript 使用 ${} 来使用类参数
- azure - 命令中出现意外的坏字符 U+0040 '@'
- omnet++ - INET:从上层接收到的帧,同时已经在传输
- python - 如何制作树形数据结构
- python - Raspberry PI 如何从 Arduino 接收结构?
- firebase - 在firebase中如何从nodejs代码创建实时
- python - 获取 pandas 数据帧中 datetimeindex 的时差并重新索引
- css - CSS - 掩码大小和掩码位置与页面上的视觉效果不匹配
- javascript - 满足条件时switch语句不返回任何内容
- reactjs - 从存储 Firebase 获取元数据信息的问题