## 這個程式碼是關於計算員工薪資的,使用了一個叫做「物件導向程式設計」的概念。 首先,讓我們講解一下什麼是物件導向程式設計(OOP): 物件導向程式設計是一種程式設計的方法,它讓我們可以將程式中的不同部分組織成「物件」,每個物件都有自己的資料和功能。想像一下,如果我們在程式中需要處理一個員工的資訊,我們可以創建一個「員工」物件,其中包含員工的名字、薪資等資料,以及計算薪資的功能。 --- ## 現在讓我們來看這段程式碼: * 首先,我們創建了一個「員工」物件,我們把這個員工叫做「tom」,並給他一個基本時薪為160。這樣,「tom」就有了自己的基本時薪。 ```python tom = Employee(160) ``` * 接下來,我們讓「tom」工作了10個小時,並給他一個索引為1的獎金。然後,我們使用「tom」的<code>salary</code>功能來計算他的薪資。這個<code>salary</code>功能會根據他的工作時數、基本時薪和獎金,計算出應該支付給他的薪資。 ```python print(tom.salary(10, 1)) ``` * 接著,我們使用一個叫做<code>set_payRate</code>的功能,設置了給付比率為<code>[1, 1.3, 1.51]</code>。這樣,每個員工在不同情況下可以得到不同比率的薪資。 ```python Employee.set_payRate([1, 1.3, 1.51]) ``` * 再次計算「tom」的薪資,這次因為給付比率改變了,所以他的薪資也會有所不同。 ```python print(tom.salary(10, 1)) ``` * 最後,我們使用了一個叫做<code>estimate</code>的功能,這個功能可以估算出員工在不同情況下的薪資。我們給了一個基本時薪、工作時數和給付比率,然後這個功能返回了估算的薪資。 ```python print(Employee.estimate(160, 20, 1.25)) ```