Python 为什么我的类代码没有激活,然后类中的def在实例中做了一些更改?

Python 为什么我的类代码没有激活,然后类中的def在实例中做了一些更改?,python,Python,def apply\u raise未激活。。为什么?请帮帮我 class Employee(): raise_amount = 1.1 raise_percentage = 10 def __init__(self,name,education,age,wage): self.name = name self.education = education self.age = age self.wage = w

def apply\u raise
未激活。。为什么?请帮帮我

class Employee():
    raise_amount = 1.1
    raise_percentage = 10
    def __init__(self,name,education,age,wage):
        self.name = name
        self.education = education
        self.age = age
        self.wage = wage
    def __str__(self):
        return "안녕하세요.저는 %s 입니다. 저의 학력은 %s 입니다." %(self.name, self.education)

    def apply_raise(self,raise_percentage,wage):
        print('%d%% 인상되어 연봉은 %s입니다.'%(self.raise_percentage, self.wage))
        self.wage = int(self.wage * self.raise_amount)
        self.raise_percentage = (self.raise_amount-1)*100
        return

taedragon = Employee('Taedragon', '로스쿨졸업', 31, '20000')
taedragon.apply_raise(10, 22000)
错误:

self.wage = int(self.wage * self.raise_amount)
TypeError: can't multiply sequence by non-int of type 'float'

原因是这一行:

taedragon = Employee('Taedragon', '로스쿨졸업', 31, '20000')
您正在传递
wage='20000'
,这是一个字符串。不能将字符串与浮点数相乘

改为这样做:

taedragon = Employee('Taedragon', '로스쿨졸업', 31, 20000)

原因是这一行:

taedragon = Employee('Taedragon', '로스쿨졸업', 31, '20000')
您正在传递
wage='20000'
,这是一个字符串。不能将字符串与浮点数相乘

改为这样做:

taedragon = Employee('Taedragon', '로스쿨졸업', 31, 20000)

实例化员工时,最后一个参数应该是
20000
,而不是
'20000'


(必须传递数字类型而不是字符串类型)

实例化
员工时,最后一个参数应该是
20000
,而不是
'20000'


(您必须传递数字类型而不是字符串类型)

我相信如果您看看如何初始化对象:
Employee('taedagon','로스쿨졸업', 31,'20000')
您有一个工资字符串,而不是数字类型。所以试试:
Employee('taedagon'),'로스쿨졸업', 31,20000)
我相信如果你看看你是如何初始化对象的:
Employee('taedagon','로스쿨졸업', 31,'20000')
您有一个工资字符串,而不是数字类型。所以试试:
Employee('taedagon'),'로스쿨졸업', 31,20000)