importing module causes TypeError: module.__init__() takes at most 2 arguments (3 given)

前端 未结 4 748
醉梦人生
醉梦人生 2021-01-11 13:45

Please don\'t mark as duplicate, other similar questions did not solve my issue.

This is my setup

/main.py
/actions/ListitAction.py
/actions/ViewAction         


        
4条回答
  •  终归单人心
    2021-01-11 14:39

    Creating classes and instance of variables

    class Student:
        # Creating a Class Variables
        perc_Raise = 1.05
    
        # Creating a constructor or a special method to initialize values
        def __init__(self,firstName,lastName,marks):
            self.firstName = firstName
            self.lastName = lastName
            self.email = firstName + "." + lastName +"@northalley.com"
            self.marks = marks
    
        def fullName(self):
            return '{} {}'.format(self.firstName,self.lastName)
    
        def apply_raise(self):
            self.marks = int(self.marks * self.perc_Raise)
    

    Creating a two instance variable for a Student class

    std_1 = Student('Mahesh','Gatta',62)
    std_2 = Student('Saran','D',63)
    
    print(std_1.fullName())
    print(std_1.marks)
    
    std_1.apply_raise()
    
    print(std_1.marks)
    print(std_1.email) 
    print(std_1.__dict__)
    print(std_2.fullName())
    print(std_2.marks)
    
    std_2.apply_raise()
    
    print(std_2.marks)
    print(std_2.email)
    print(std_2.__dict__)
    
    print(Student.__dict__)
    

    Inheritance

    class Dumb(Student):
        perc_Raise = 1.10
    
        def __init__(self,firstName,lastName,marks,prog_lang):
            super().__init__(firstName,lastName,marks)
            self.prog_lang = prog_lang
    
    std_1 = Dumb('Suresh','B',51,'Python')
    
    print(std_1.fullName())
    print(std_1.marks)
    
    std_1.apply_raise()
    
    print(std_1.marks)
    print(std_1.prog_lang)
    

提交回复
热议问题