TypeError: __init __ () принимает 3 позиционных аргумента, но 4 получили ошибку - PullRequest
0 голосов
/ 13 июля 2020
from abc import ABCMeta, abstractmethod
class Book(object, metaclass=ABCMeta):
    def __init__(self,title,author):
        self.title=title
        self.author=author   
    @abstractmethod
    def display(): pass
class MyBook(Book):
    def __innit__(self,title,author,price):
        self.title = title
        self.author = author
        self.price = price    
    def display(self):
        print("Title: {0}".format(self.title))
        print("Author: {0}".format(self.author))
        print("Price: {0}".format(self.price))
title=input()
author=input()
price=int(input())
new_novel = MyBook(title,author,price)
new_novel.display()

обнаружена ошибка: TypeError: init () принимает 3 позиционных аргумента, но было дано 4, пожалуйста, дайте мне идеи, как исправить эту ошибку

1 Ответ

1 голос
/ 13 июля 2020

У вас есть опечатка во второй функции инициатора. замените « innit » на « init » в классе MyBook.

...