Python 对于uuu init_uuuu()的参数太多

Python 对于uuu init_uuuu()的参数太多,python,Python,我试着写一个程序,在这个程序中输入一个数字,代表一个物体的数量。这里的对象是人、个人电脑和手机。程序需要为每个人分配一台PC和一部电话,然后为每个人输出这些设备的规格。当我尝试输入多台电脑时,我得到一个“init()接受4个位置参数,但给出6个”错误。该程序分为3个文件:main、PC和Person。 main: PC: 人: 我尝试了很多东西,如果能帮上一点忙,我将不胜感激 main中的这一行是罪魁祸首: pc1 = PC(ram1, cpu1, gpu1, psu, hdd) 您正在传入p

我试着写一个程序,在这个程序中输入一个数字,代表一个物体的数量。这里的对象是人、个人电脑和手机。程序需要为每个人分配一台PC和一部电话,然后为每个人输出这些设备的规格。当我尝试输入多台电脑时,我得到一个“init()接受4个位置参数,但给出6个”错误。该程序分为3个文件:main、PC和Person。 main:

PC:

人:


我尝试了很多东西,如果能帮上一点忙,我将不胜感激

main中的这一行是罪魁祸首:

pc1 = PC(ram1, cpu1, gpu1, psu, hdd)
您正在传入
psu
hdd
,但PC的init函数不接受这些额外参数

class PC:
    def __init__(self, ram, cpu, gpu):
        self.ram = ram
        self.cpu = cpu
        self.gpu = gpu

您已将PC定义为使用
def\uu init\uuuuu(self、ram、cpu、gpu):
但您正在使用
PC(ram1、cpu1、gpu1、psu、hdd)
呼叫
psu
hdd
class Human:
    def __init__(self, name, age,gender,height, pc,ph):
        self.name = name
        self.age = age
        self.pc = pc
        self.ph = ph
        self.gender = gender
        self.height = height





    def show_human(self):
        print("Name: " + self.name)
        print("Age: " + str(self.age))
        print("Gender: " + self.gender)
        print("Height: " + str(self.height))
        print('PC')
        self.pc.show_pc()
        print("Phone")
        self.ph.show_phone()
pc1 = PC(ram1, cpu1, gpu1, psu, hdd)
class PC:
    def __init__(self, ram, cpu, gpu):
        self.ram = ram
        self.cpu = cpu
        self.gpu = gpu