" />

欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python面向?qū)ο笾?lèi)和對(duì)象

 更新時(shí)間:2021年12月13日 16:17:18   作者:一邊學(xué)習(xí)一邊哭  
這篇文章主要為大家介紹了Python類(lèi)和對(duì)象,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

類(lèi)

定義類(lèi)

  • 所有類(lèi)名首字母要求大寫(xiě),多個(gè)單詞時(shí)遵循駝峰命名法
  • 所有未定義父類(lèi)的類(lèi)都繼承object

格式:class 類(lèi)名[(父類(lèi))]:

#兩種方式意思相同
class Person:
    pass 
class Person(object):
    pass

定義類(lèi)和屬性

name、age、subject就是類(lèi)屬性

class Student:
    #類(lèi)屬性
    name = ''
    age = 0
    subject = []

類(lèi)中方法

對(duì)象方法(普通方法)

格式:
def 方法名(self[,parm1,parm2...]):
    pass

self就是對(duì)象本身

class Student:
    # 類(lèi)屬性
    name = 'student'
    age = 0
    subject = []
   # 普通方法
    def study(self):
        print(self.name, '正在學(xué)習(xí)...') 
xiaoming = Student()
xiaoming.name = 'xiaoming'
xiaoming.study() 

------------
輸出:
xiaoming 正在學(xué)習(xí)...

class Student:
    # 類(lèi)屬性
    name = 'student'
    age = 0
    subject = []
   # 普通方法
    def study(self, name):
        print(name, '正在學(xué)習(xí)...') 
s1 = Student()
s1.study('xiaohong')
 

----------------
輸出:
xiaohong 正在學(xué)習(xí)...

類(lèi)方法

格式:
@classmethod
def 方法名(cls):
    pass
  • 類(lèi)方法使用@classmethod裝飾器
  • 對(duì)象方法傳入的是self,類(lèi)方法傳入的是cls
  • 類(lèi)方法可以直接用類(lèi)調(diào)用,或者可以用類(lèi)的實(shí)例(對(duì)象)調(diào)用
class Dog:
    dog_type = '阿拉斯加'
   def __init__(self, nickname):
        self.name = nickname
   def dog_run(self):
        print('{}在公園里跑.看起來(lái)是一只{}.'.format(self.name, self.dog_type))
   @classmethod
    def dog_sit(cls):
        print(cls.dog_type, '很乖,坐下了') 
dog1 = Dog('肉丸')
dog1.dog_type = '小泰迪'
dog1.dog_run()
Dog.dog_sit() 

--------------
輸出:
肉丸在公園里跑.看起來(lái)是一只小泰迪.
阿拉斯加 很乖,坐下了

靜態(tài)方法

  • 靜態(tài)方法使用裝飾器@staticmethod
  • 靜態(tài)方法沒(méi)有參數(shù)
  • 當(dāng)方法跟類(lèi)屬性和對(duì)象屬性都沒(méi)有關(guān)系的時(shí)候,使用靜態(tài)方法
  • 支持對(duì)象和類(lèi)名直接調(diào)用
class Dog:
    def __init__(self, nickname):
        self.name = nickname
   @staticmethod
    def dog_sit():
        print('很乖,坐下了') 
dog1 = Dog('肉丸')
dog1.dog_sit()
Dog.dog_sit() 
---------------------

輸出:
很乖,坐下了
很乖,坐下了

魔術(shù)方法

格式:
def __方法名__(self):
    pass

__init__() 構(gòu)造函數(shù)

  • 如果沒(méi)有__init__。直接利用類(lèi)向內(nèi)存申請(qǐng)一個(gè)和類(lèi)一樣的空間,給到對(duì)象。
  • 如果有__init__。利用類(lèi)向內(nèi)存申請(qǐng)一個(gè)和類(lèi)一樣空間,內(nèi)存空間(self)傳遞給__iniy__,執(zhí)行__init__的函數(shù)。最后將內(nèi)存空間給到對(duì)象。

對(duì)象

創(chuàng)建對(duì)象

格式:對(duì)象名 = 類(lèi)名()

class Student:
    #類(lèi)屬性
    name = ''
    age = 0
    subject = [] 
xiaoming = Student()

對(duì)象屬性

  • 當(dāng)創(chuàng)建了對(duì)象時(shí),對(duì)象會(huì)繼承類(lèi)的屬性。獲取屬性的時(shí)候,也是從類(lèi)中獲取屬性。
  • 當(dāng)對(duì)默認(rèn)的類(lèi)屬性賦值后(對(duì)象名.屬性 = xxxx),屬性才會(huì)變成對(duì)象屬性。
class Student:
    # 類(lèi)屬性
    name = 'student'
    age = 0
    subject = [] 
xiaoming = Student()
print('類(lèi)屬性:', xiaoming.name)  # 此時(shí)是從類(lèi)中獲取的類(lèi)屬性
xiaoming.name = 'xiaoming'  # 因?yàn)橘x值了,此時(shí)變成了對(duì)象屬性
print('對(duì)象屬性:', xiaoming.name) 
-------------

輸出:
類(lèi)屬性: student
對(duì)象屬性: xiaoming

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Python詳細(xì)對(duì)比講解break和continue區(qū)別

    Python詳細(xì)對(duì)比講解break和continue區(qū)別

    這篇文章主要介紹了python循環(huán)控制語(yǔ)句 break 與 continue,break就像是終止按鍵,不管執(zhí)行到哪一步,只要遇到break,不管什么后續(xù)步驟,直接跳出當(dāng)前循環(huán)
    2022-06-06
  • 使用Mac時(shí)psycopg2導(dǎo)入PyCharm失敗的解決

    使用Mac時(shí)psycopg2導(dǎo)入PyCharm失敗的解決

    這篇文章主要介紹了使用Mac時(shí)psycopg2導(dǎo)入PyCharm失敗的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • ZABBIX3.2使用python腳本實(shí)現(xiàn)監(jiān)控報(bào)表的方法

    ZABBIX3.2使用python腳本實(shí)現(xiàn)監(jiān)控報(bào)表的方法

    今天小編就為大家分享一篇ZABBIX3.2使用python腳本實(shí)現(xiàn)監(jiān)控報(bào)表的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Python基于回溯法子集樹(shù)模板解決0-1背包問(wèn)題實(shí)例

    Python基于回溯法子集樹(shù)模板解決0-1背包問(wèn)題實(shí)例

    這篇文章主要介紹了Python基于回溯法子集樹(shù)模板解決0-1背包問(wèn)題,簡(jiǎn)單描述了0-1背包問(wèn)題并結(jié)合具體實(shí)例形式分析了Python使用回溯法子集樹(shù)模板解決0-背包問(wèn)題的具體實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-09-09
  • pytorch搭建模型的五大層次級(jí)別解讀(由淺入深)

    pytorch搭建模型的五大層次級(jí)別解讀(由淺入深)

    這篇文章主要介紹了pytorch搭建模型的五大層次級(jí)別(由淺入深),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 解決Keras 自定義層時(shí)遇到版本的問(wèn)題

    解決Keras 自定義層時(shí)遇到版本的問(wèn)題

    這篇文章主要介紹了解決Keras 自定義層時(shí)遇到版本的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • PyTorch的Debug指南

    PyTorch的Debug指南

    這篇文章主要介紹了PyTorch的Debug的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用PyTorch,感興趣的朋友可以了解下
    2021-05-05
  • 使用Python串口實(shí)時(shí)顯示數(shù)據(jù)并繪圖的例子

    使用Python串口實(shí)時(shí)顯示數(shù)據(jù)并繪圖的例子

    今天小編就為大家分享一篇使用Python串口實(shí)時(shí)顯示數(shù)據(jù)并繪圖的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • 最新評(píng)論