91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python面向對象編程中類方法和靜態方法是怎樣的

發布時間:2021-12-04 09:21:33 來源:億速云 閱讀:129 作者:柒染 欄目:大數據

本篇文章給大家分享的是有關python面向對象編程中類方法和靜態方法是怎樣的,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

今天學習python的面向對象編程-類方法和靜態方法。

新建一個python文件命名為py3_oop3.py,在這個文件中進行操作代碼編寫:

#面向對象編程#類方法和靜態方法
class Employee:  raise_amount = 1.04#定義類變量  num_of_emps = 0  def __init__(self,first,last,pay):    self.first = first    self.last = last    self.email = first + '.' + last +'@email.com'    self.pay = pay    Employee.num_of_emps +=1
 def fullname(self):    return '{} {}'.format(self.first,self.last)
 def apply_raise(self):    self.pay = int(self.pay * self.raise_amount)  #類方法用@classmethod標識符修飾    #cls作為第一個參數用來表示類本身.  #在類方法中用到,類方法是只與類本身有關  #而與實例無關的方法  @classmethod    def set_raise_amt(cls,amount):    cls.raise_amount = amount  #定義一個接收emp String  #返回實例化對象的類方法  @classmethod  def from_emp_str(cls,emp_str):    first,last,pay = emp_str.split('-')    #這里理解為調用    #Employee(first,last,pay)    #并返回    return cls(first,last,pay)    #靜態方法用@staticmethod標識符修飾  #就像一個普通的函數  #判斷是不是工作日  @staticmethod    def is_workday(day):    if day == 5 or day ==6:      return False    return True
emp_1 = Employee('T','Bag',50000)emp_2 = Employee('Mc','User',6000)Employee.set_raise_amt(1.05)print(Employee.raise_amount)#1.05print(emp_1.raise_amount)#1.05print(emp_2.raise_amount)#1.05#我們調用emp_1.set_raise_amt()#在打印Employee.set_raise_amt(1.06)print(Employee.raise_amount)#1.06print(emp_1.raise_amount)#1.06print(emp_2.raise_amount)#1.06#發現類和實例對象的raise_amount全部跟著改變#我們打印emp_1的屬性信息print(emp_1.__dict__)#{'first': 'T', 'last': 'Bag', 'email': 'T.Bag@email.com', 'pay': 50000}#這里并不包含raise_amount屬性#因為調用類方法set_raise_amt#修改的是類的變量屬性
#定義一個emp string#調用from_emp_str()emp_str = 'T-Bag-5000'new_emp_1 = Employee.from_emp_str(emp_str)print(new_emp_1.email)#T.Bag@email.com#調用類Employee靜態方法:import datetimetoday = datetime.datetime.today()print(Employee.is_workday(today))#True

運行結果:

1.051.051.051.061.061.06{'first': 'T', 'last': 'Bag', 'email': 'T.Bag@email.com', 'pay': 50000}T.Bag@email.comTrue

以上就是python面向對象編程中類方法和靜態方法是怎樣的,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建德市| 屏东市| 鸡西市| 武鸣县| 重庆市| 尼木县| 卢氏县| 嫩江县| 湟中县| 增城市| 朝阳市| 洱源县| 肇东市| 全州县| 禄劝| 无棣县| 连南| 门头沟区| 合山市| 永和县| 齐齐哈尔市| 邵武市| 西峡县| 商水县| 平果县| 吉安县| 龙泉市| 辽源市| 白银市| 阿克陶县| 大方县| 凌云县| 巩义市| 乌兰浩特市| 孟连| 宣恩县| 卢龙县| 五指山市| 武平县| 个旧市| 襄汾县|