最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中__str__()的妙用

 更新時(shí)間:2023年01月25日 10:54:37   作者:是小菜欸  
本文主要介紹了Python中__str__()的妙用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

這里是Python小技巧的系列文章。這是第三篇,object.__str__(self)方法的妙用。

書接上回,這次還是介紹Python類的內(nèi)置方法,__str__()

據(jù)官方文檔的介紹,在使用 str(object) 、format() 和 print() 的時(shí)候會(huì)調(diào)用__str__() 方法,該方法會(huì)將實(shí)例轉(zhuǎn)換為字符串,返回值為 字符串 對(duì)象。
如果__str__()沒有被定義,就會(huì)調(diào)用 object.__repr__()

實(shí)現(xiàn) str 方法來定制一個(gè)類的實(shí)例的字符串表示。

知識(shí)點(diǎn)????

object.__str__(self)https://docs.python.org/zh-cn/3.8/reference/datamodel.html?object.repr
object.__repr__(self)https://docs.python.org/zh-cn/3/reference/datamodel.html?object.repr

關(guān)于__repr__(),基本用不上。建議查看官方文檔,粗略了解即可。

先來看一組簡(jiǎn)單的代碼(這個(gè)類沒有實(shí)現(xiàn)任何功能

"""demo.py"""


class Nothing:
    ...


if __name__ == "__main__":
    print(Nothing())	# <__main__.Nothing object at 0x000002C2CFD06650> 0x2c2cfd06650

默認(rèn)的打印結(jié)果是當(dāng)前類的實(shí)例的名稱和內(nèi)存地址,如下圖所示(不夸張地說,這個(gè)類實(shí)例的打印可以說是毫無用處?。?!

剖析

在代碼復(fù)雜的情況下,再打印默認(rèn)的類實(shí)例,那就顯得太雞肋了。
這個(gè)時(shí)候我們就需要重寫 __str__()方法了,使得它更加人性化。

再來看一組復(fù)雜點(diǎn)的代碼

"""demo.py"""


class Nothing:
    name = 'frica'
    age = 20

    def __str__(self):
        return f'Nothing(name={self.name}, age={self.age})'


if __name__ == "__main__":
    print(Nothing())

代碼執(zhí)行效果如下:

重寫 __str__() 后與 默認(rèn)打印的類實(shí)例對(duì)比如下圖所示:

孰優(yōu)孰劣一目了然

后話

本次介紹及重寫了 __str__(),在重寫之后,可以更為方便且準(zhǔn)確的描述信息類實(shí)例的信息,這對(duì)于我們的編程工作是有幫助的。更多相關(guān)Python __str__()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python實(shí)現(xiàn)拓?fù)渑判虻姆椒ú襟E

    python實(shí)現(xiàn)拓?fù)渑判虻姆椒ú襟E

    拓?fù)渑判蚴菍?duì)有向無環(huán)圖進(jìn)行排序的一種算法,本文主要介紹了python實(shí)現(xiàn)拓?fù)渑判虻姆椒ú襟E,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • python數(shù)據(jù)分析工具之 matplotlib詳解

    python數(shù)據(jù)分析工具之 matplotlib詳解

    對(duì)于 Python 來說,matplotlib 是最著名的繪圖庫,它主要用于二維繪圖,當(dāng)然也可以進(jìn)行簡(jiǎn)單的三維繪圖。這篇文章主要介紹了python數(shù)據(jù)分析工具之 matplotlib的相關(guān)知識(shí),需要的朋友可以參考下
    2020-04-04
  • Python簡(jiǎn)單獲取網(wǎng)卡名稱及其IP地址的方法【基于psutil模塊】

    Python簡(jiǎn)單獲取網(wǎng)卡名稱及其IP地址的方法【基于psutil模塊】

    這篇文章主要介紹了Python簡(jiǎn)單獲取網(wǎng)卡名稱及其IP地址的方法,結(jié)合實(shí)例形式分析了Python基于psutil模塊針對(duì)本機(jī)網(wǎng)卡硬件信息的讀取操作簡(jiǎn)單使用技巧,需要的朋友可以參考下
    2018-05-05
  • Python實(shí)現(xiàn)交通數(shù)據(jù)可視化的示例代碼

    Python實(shí)現(xiàn)交通數(shù)據(jù)可視化的示例代碼

    本文主要分享了Python交通數(shù)據(jù)分析與可視化的實(shí)戰(zhàn)!其中主要是使用TransBigData庫快速高效地處理、分析、挖掘出租車GPS數(shù)據(jù),感興趣的可以了解一下
    2023-04-04
  • opencv3/python 鼠標(biāo)響應(yīng)操作詳解

    opencv3/python 鼠標(biāo)響應(yīng)操作詳解

    今天小編就為大家分享一篇opencv3/python 鼠標(biāo)響應(yīng)操作詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Django分頁查詢并返回jsons數(shù)據(jù)(中文亂碼解決方法)

    Django分頁查詢并返回jsons數(shù)據(jù)(中文亂碼解決方法)

    這篇文章主要介紹了Django分頁查詢并返回jsons數(shù)據(jù)(中文亂碼解決方法),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • Django filter動(dòng)態(tài)過濾與排序?qū)崿F(xiàn)過程解析

    Django filter動(dòng)態(tài)過濾與排序?qū)崿F(xiàn)過程解析

    這篇文章主要介紹了Django filter動(dòng)態(tài)過濾與排序?qū)崿F(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 淺談python import引入不同路徑下的模塊

    淺談python import引入不同路徑下的模塊

    下面小編就為大家?guī)硪黄獪\談python import引入不同路徑下的模塊。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • python 實(shí)現(xiàn)矩陣填充0的例子

    python 實(shí)現(xiàn)矩陣填充0的例子

    今天小編就為大家分享一篇python 實(shí)現(xiàn)矩陣填充0的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python3.7下安裝pyqt5的方法步驟(圖文)

    Python3.7下安裝pyqt5的方法步驟(圖文)

    這篇文章主要介紹了Python3.7下安裝pyqt5的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05

最新評(píng)論

绥棱县| 博罗县| 岳普湖县| 陆丰市| 桑日县| 大方县| 江北区| 赤水市| 通化县| 池州市| 九寨沟县| 且末县| 宽城| 东方市| 扎鲁特旗| 东兰县| 安西县| 无棣县| 定边县| 永平县| 余庆县| 富蕴县| 曲阜市| 平江县| 汨罗市| 班戈县| 胶州市| 搜索| 钦州市| 顺义区| 济宁市| 金乡县| 岚皋县| 崇左市| 南昌县| 文山县| 邢台县| 即墨市| 政和县| 芜湖县| 永兴县|