在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python面向對象深化(上)

麥辣雞腿堡 ? 來源:python都知道 ? 作者:了不起 ? 2023-05-11 17:51 ? 次閱讀

前言

哈嘍, 大家好, 我是了不起!

歡迎大家來觀看了不起的冒險之旅. 為了方便起見, 文中以小知為名. 講述了不起在Python異世界的冒險之旅.

天空之城是座高聳云端的城堡. 位于西海岸附近, 在城堡的最頂端可以眺望到天空之海. 直到格蘭之森那場大火的發生,使得圍繞在它周圍的魔法陣力量減弱,人們才終于重新看到天空之城的真實模樣. 當時,關于天界的傳聞甚至比天上的繁星還多,但是卻沒有一個人能夠證明它真實存在。


實例對象和類對象創建過程內存分析

我們以下面代碼為例,分析整個創建過程:

classStudent:

company="sxd"#類屬性

count=0#類屬性

def__init__(self,name,score):

self.name=name#實例屬性

self.score=score

Student.count=Student.count+1

defsay_score(self):#實例方法

print("我的公司是:",Student.company)

print(self.name,"的分數是:",self.score)

s1=Student("時間靜止",18)#s1是實例對象,自動調用__init__()方法

s2=Student("不是簡史",81)

s1.say_score()

print('一共創建{0}個Student對象'.format(Student.count))

print("s1的引用:",id(s1))

print("s2的引用:",id(s2))

print("Student的引用:",id(Student))

pYYBAGRcuk6AAcKEAAFo1aKJyGU270.png

默認的類方法

init構造方法和__new__ 方法

初始化對象, 我們需要定義構造函數__init__()方法 構造方法用于執行“實例對象的初始化工作”, 即對象創建后, 初始化當前對象的相關屬性, 無返回值 如果將對象比作一座房子, 則構造方法(__init__)是負責初始化(裝修) , 不是建對象(房子)

__init__()的要點如下(約等于Java的構造方法):

  1. 名稱固定, 必須為: __init__()
  2. 第一個參數固定, 必須為: self.self指的就是剛剛創建好的實例對象
  3. 構造函數通常用來初始化實例對象的實例屬性 通過“類名(參數列表)”來調用構造函數. 調用后, 將創建好的對象返回給相應的變量. 比如: s1 = Student("時間靜止", 80)
  4. __init__()方法: 初始化創建好的對象,初始化指的是: "給實例屬性賦值"
  5. 如果我們不定義__init__方法, 系統會提供一個默認的__init__方法. 如果我們定義了帶參的__init__方法, 系統不創建默認的__init__方法
  6. __new__()方法: 用于創建對象, 但我們一般無需重定義該方法

注意:

  • Python中的 self 相當于C++中的 self指針 , JAVA和C#中的 this 關鍵字
  • Python中, self 必須為構造函數的第一個參數, 名字可以任意修改, 但一般都叫做 self.他的作用是指向當前對象的本身/當前對象的引用

__del__方法(析構函數)和垃圾回收機制

__del__()稱為“析構方法”, 用于實現對象被銷毀時所需的操作. 比如: 釋放對象占用的資源, 例如: 打開的文件資源、網絡連接等

注意:

  1. Python實現自動的垃圾回收, 當對象沒有被引用時(引用計數為0), 由垃圾回收器調用__del__()
  2. 我們也可以通過 del語句 刪除對象, 從而保證調用__del__()
  3. 系統會自動提供__del__方法 , 一般不需要自定義析構方法.

實操代碼

classPerson:

def__del__(self):

print("銷毀對象:{0}".format(self))

p1=Person()

p2=Person()

delp2

print("程序結束")

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4808

    瀏覽量

    68816
  • python
    +關注

    關注

    56

    文章

    4801

    瀏覽量

    84865
收藏 人收藏

    評論

    相關推薦

    Python面向對象編程詳解

    一般編程可分為面向過程編程,和面向對象編程。Python面向對象編程,與Java的
    發表于 09-04 16:35 ?584次閱讀
    <b class='flag-5'>Python</b>的<b class='flag-5'>面向</b><b class='flag-5'>對象</b>編程詳解

    labview面向對象編程

    點擊學習>>《龍哥手把手教你學LabVIEW視覺設計》視頻教程使用LabVIEW面向對象編程方法,對于大型測試應用程序來講,面向對象相對于面向
    發表于 11-24 11:01

    3分鐘看懂Python面向對象

    可以的,Python并不做硬性的限制。Python面向對象特征如下:封裝面向對象程序設計中的術
    發表于 06-08 14:20

    LabVIEW面向對象的ActorFramework(1)

    ` 本帖最后由 bollworm 于 2020-2-10 14:54 編輯 本系列文章主要闡述以下幾個問題:(1)什么是面向對象編程?(2)為什么要學習面向編程?(3)LabVIEW面向
    發表于 02-10 14:09

    面向對象編程及其三大特性 精選資料分享

    編程語言分為面向過程編程、函數式編程和面向對象編程。其實python就是一種面向對象編程,那么我
    發表于 07-21 08:38

    談談面向對象編程

    在工業自動化領域,梯形圖邏輯仍然是最常用的編程語言之一,但對于更加復雜的控制對象面向對象編程不失為一種高效率的方式。下面先來談談面向對象
    發表于 09-08 07:47

    面向對象編程總結

    如何從面向過程到面向對象OOP?面向對象是什么?有何特點?
    發表于 09-29 08:19

    面向對象編程介紹

    目錄一、面向對象編程介紹1.面向過程編程2.函數式編程3.面向對象編程二.面向
    發表于 12-13 07:22

    網絡講壇:面向對象的編程()-labview視頻教程

    網絡講壇:面向對象的編程()-labview視頻教程
    發表于 03-26 16:41 ?252次下載

    這可能是Python面向對象編程的最佳實踐

    本節介紹了attrs和cattrs兩個庫,讓實現Python面向對象編程不再難。
    的頭像 發表于 06-22 12:07 ?2695次閱讀

    利用Python和PyTorch處理面向對象的數據集

    本篇是利用 Python 和 PyTorch 處理面向對象的數據集系列博客的第 2 篇。 如需閱讀第 1 篇:原始數據和數據集,請參閱此處。 我們在第 1 部分中已定義 MyDataset 類,現在
    的頭像 發表于 08-25 15:30 ?3004次閱讀

    利用 Python 和 PyTorch 處理面向對象的數據集(2)) :創建數據集對象

    本篇是利用 Python 和 PyTorch 處理面向對象的數據集系列博客的第 2 篇。我們在第 1 部分中已定義 MyDataset 類,現在,讓我們來例化 MyDataset 對象
    的頭像 發表于 08-02 17:35 ?949次閱讀
    利用 <b class='flag-5'>Python</b> 和 PyTorch 處理<b class='flag-5'>面向</b><b class='flag-5'>對象</b>的數據集(2)) :創建數據集<b class='flag-5'>對象</b>

    面向過程與面向對象的區別

    說起面向對象,大家可能會想到其他的,但是此對象非彼對象哈哈,不必驚慌,也特別好搞定。 在聽到面向
    的頭像 發表于 02-15 11:10 ?4236次閱讀
    <b class='flag-5'>面向</b>過程與<b class='flag-5'>面向</b><b class='flag-5'>對象</b>的區別

    Python中的類和對象詳解

    Python 是一種面向對象的編程語言,它支持類和對象。類是一種用戶自定義的數據類型,用于定義對象的屬性和方法。
    的頭像 發表于 04-20 16:53 ?1177次閱讀

    Python面向對象深化(下)

    __call__ ?方法和可調用對象 凡是可以將 () 直接應用到自身并執行, 都稱為可調用對象. 注意: 可調用對象包括自定義的函數、Python 內置函數、以及本節所講的實例
    的頭像 發表于 05-11 17:52 ?674次閱讀
    主站蜘蛛池模板: 色婷婷色综合| 欧美成人精品久久精品| 色网站免费视频| 亚洲一区二区三区四区五区六区 | 精品特级毛片| 韩国r天堂| bt天堂网在线资源www| 午夜特级毛片| 久久黄视频| 欧美国产黄色| 禁网站在线观看免费视频| 中文字幕在线不卡| 天堂最新版资源www在线| 欧美性久久久久| 国产精品9999久久久久仙踪林| 一级片在线免费看| 日本三级456| 波多野结衣50连精喷在线| 免费观看影院| www.五月婷婷| 中国一级特黄剌激爽毛片| 午夜黄大色黄大片美女图片| 欧美黄色免费| 简单视频在线播放jdav| 乱j伦小说在线阅读| 亚洲 欧美 另类 综合 日韩| 欧美一级视频免费观看| 国产一区二区三区不卡观| 天天网综合| 欧美性三级| 在线观看亚洲成人| 日本三级日本三级人妇三级四| 精品久久久久久中文字幕欧美| 亚洲 欧美 自拍 另类 欧美| 国产精品9999| 精品国产免费观看久久久| 色视频在线观看免费| 国产美女视频免费| 久久国产美女| 欧美亚洲视频一区| 日韩色区|