国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > python self是什么意思,怎么使用?

python self是什么意思,怎么使用?

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-11 19:56:23 1697025383

一、python self

介紹

首先明確的是self只有在類的方法中才會(huì)有,獨(dú)立的函數(shù)或方法是不必帶有self的。self在定義類的方法時(shí)是必須有的,雖然在調(diào)用時(shí)不必傳入相應(yīng)的參數(shù)。

self名稱不是必須的,在python中self不是關(guān)鍵詞,你可以定義成a或b或其它名字都可以,但是約定成俗(為了和其他編程語言統(tǒng)一,減少理解難度),不要搞另類,大家會(huì)不明白的。

下例中將self改為myname一樣沒有錯(cuò)誤:

class Person:

??? def _init_(myname,name):

??????? myname.name=name

??? def sayhello(myname):

??????? print ‘My name is:’,myname.name

p=Person(‘Bill’)

print p

self指的是類實(shí)例對(duì)象本身(注意:不是類本身)。

class Person:

??? def _init_(self,name):

??????? self.name=name

??? def sayhello(self):

??????? print ‘My name is:’,self.name

p=Person(‘Bill’)

print p

在上述例子中,self指向Person的實(shí)例p。 為什么不是指向類本身呢,如下例子:

class Person:

??? def _init_(self,name):

??????? self.name=name

??? def sayhello(self):

??????? print ‘My name is:’,self.name

p1=Person(‘Bill’)

p2 = Person(‘Apple’)

print p1

如果self指向類本身,那么當(dāng)有多個(gè)實(shí)例對(duì)象時(shí),self指向哪一個(gè)呢?

總結(jié)

self在定義時(shí)需要定義,但是在調(diào)用時(shí)會(huì)自動(dòng)傳入。

self的名字并不是規(guī)定死的,但是較好還是按照約定是用self

self總是指調(diào)用時(shí)的類的實(shí)例。

延伸閱讀:

二、編碼發(fā)展的歷史

在計(jì)算機(jī)歷史的早期,美國為代表的英語系國家主導(dǎo)了整個(gè)計(jì)算機(jī)行業(yè),26個(gè)英文字母組成了多樣的英語單詞、語句、文章。因此,較早的字符編碼規(guī)范是ASCII碼,一種8位即1個(gè)字節(jié)的編碼規(guī)范,它可以涵蓋整個(gè)英語系的編碼需要。

編碼是什么?編碼就是把一個(gè)字符用一個(gè)二進(jìn)制來表示。我們都知道,所有的東西,不管是英文、中文還是符號(hào)等等,最終存儲(chǔ)在磁盤上都是01010101這類東西。在計(jì)算機(jī)內(nèi)部,讀取和存儲(chǔ)數(shù)據(jù)歸根結(jié)底,處理的都是0和1組成的比特流。問題來了,人類看不懂這些比特流,如何讓這些010101對(duì)人類變得可讀呢?于是出現(xiàn)了字符編碼,它是個(gè)翻譯機(jī),在計(jì)算機(jī)內(nèi)部某個(gè)地方,透明的幫我們將比特流翻譯成人類可以直接理解的文字。對(duì)于一般用戶,不需要知道這個(gè)過程是什么原理,是怎么執(zhí)行的。但是對(duì)于程序員卻是個(gè)必須搞清楚的問題。

以ASCII編碼為例,它規(guī)定1個(gè)字節(jié)8個(gè)比特位代表1個(gè)字符的編碼,也就是“00000000”這么寬,一個(gè)一個(gè)字節(jié)的解讀。例如:01000001表示大寫字母A,有時(shí)我們會(huì)“偷懶”的用65這個(gè)十進(jìn)制來表示A在ASCII中的編碼。8個(gè)比特位,可以沒有重復(fù)的非常多表示2的8次方(255)個(gè)字符。

后來,計(jì)算機(jī)得到普及,中文、日文、韓文等等國家的文字需要在計(jì)算機(jī)內(nèi)表示,ASCII的255位遠(yuǎn)遠(yuǎn)不夠,于是標(biāo)準(zhǔn)組織制定出了叫做UNICODE的萬國碼,它規(guī)定任何一個(gè)字符(不管哪國的)至少以2個(gè)字節(jié)表示,可以更多。其中,英文字母就是用2個(gè)字節(jié),而漢字是3個(gè)字節(jié)。這個(gè)編碼雖然很好,滿足了所有人的要求,但是它不兼容ASCII,同時(shí)還占用較多的空間和內(nèi)存。因?yàn)?,在?jì)算機(jī)世界更多的字符是英文字母,明明可以1個(gè)字節(jié)就能夠表示,非要用2個(gè)。

于是UTF-8編碼應(yīng)運(yùn)而生,它規(guī)定英文字母系列用1個(gè)字節(jié)表示,漢字用3個(gè)字節(jié)表示等等。因此,它兼容ASCII,可以解碼早期的文檔。UTF-8很快就得到了廣泛的應(yīng)用。

在編碼的發(fā)展歷程中,我國還創(chuàng)造了自己的編碼方式,例如GBK,GB2312,BIG5。他們只局限于在國內(nèi)使用,不被國外認(rèn)可。在GBK編碼中,中文漢字占2個(gè)字節(jié)。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
一款好的APP應(yīng)該是什么樣子?

一、好的APP具備的特點(diǎn)1、直觀易用用戶界面應(yīng)該簡(jiǎn)潔明了,操作邏輯清晰,使用戶能夠快速上手并自如地進(jìn)行操作。良好的用戶體驗(yàn)是一款成功的APP...詳情>>

2023-10-11 21:33:38
python的五個(gè)特點(diǎn)?

一、簡(jiǎn)潔易讀的語法Python以簡(jiǎn)潔易讀而著稱。它采用了一種簡(jiǎn)單而直觀的語法,使得代碼具有高度的可讀性,降低了學(xué)習(xí)和理解的難度。Python使用縮...詳情>>

2023-10-11 21:23:04
區(qū)塊鏈技術(shù)在醫(yī)療領(lǐng)域有沒有什么可以應(yīng)用的場(chǎng)景?

一、區(qū)塊鏈技術(shù)在醫(yī)療領(lǐng)域的應(yīng)用區(qū)塊鏈在醫(yī)療領(lǐng)域的應(yīng)用前景廣泛,國內(nèi)外各機(jī)構(gòu)都在積極探索區(qū)塊鏈在醫(yī)療領(lǐng)域的多方面應(yīng)用。主要應(yīng)用方向包括醫(yī)...詳情>>

2023-10-11 21:17:44
Java并發(fā)編程需要掌握什么?

一、Java并發(fā)編程需要掌握的內(nèi)容1、線程基礎(chǔ)知識(shí)了解線程的概念、生命周期和狀態(tài)轉(zhuǎn)換,以及如何創(chuàng)建和管理線程。熟悉Java中的Thread類和Runnabl...詳情>>

2023-10-11 21:08:03
WEB服務(wù)器是什么?

一、WEB服務(wù)器是什么WEB服務(wù)器是一種用于存儲(chǔ)、處理和提供Web內(nèi)容的軟件或硬件設(shè)備。它充當(dāng)了Web應(yīng)用程序和客戶端之間的中間層,負(fù)責(zé)接收來自客...詳情>>

2023-10-11 20:49:17