最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

python動態(tài)性強(qiáng)類型用法實(shí)例

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 14:41:39
文檔

python動態(tài)性強(qiáng)類型用法實(shí)例

python動態(tài)性強(qiáng)類型用法實(shí)例:本文實(shí)例分析了python動態(tài)性強(qiáng)類型用法。分享給大家供大家參考。具體如下: Python變量聲明和定義 與C#不同,Python在使用變量之前無須定義它的類型,試著運(yùn)行下面的例子: i = 12 print i 從上邊我們可以看到,變量 i 在使用前并不需要定義,但是必須
推薦度:
導(dǎo)讀python動態(tài)性強(qiáng)類型用法實(shí)例:本文實(shí)例分析了python動態(tài)性強(qiáng)類型用法。分享給大家供大家參考。具體如下: Python變量聲明和定義 與C#不同,Python在使用變量之前無須定義它的類型,試著運(yùn)行下面的例子: i = 12 print i 從上邊我們可以看到,變量 i 在使用前并不需要定義,但是必須

本文實(shí)例分析了python動態(tài)性強(qiáng)類型用法。分享給大家供大家參考。具體如下:

Python變量聲明和定義

與C#不同,Python在使用變量之前無須定義它的類型,試著運(yùn)行下面的例子:

i = 12 print i

從上邊我們可以看到,變量 i 在使用前并不需要定義,但是必須聲明以及初始化該變量。試著運(yùn)行下面的例子:

i = 1
print i + j

上面的代碼會產(chǎn)生一個異常:“NameError: name 'j' is not defined”,Python提示變量 j 沒有定義。這點(diǎn)和BASIC等弱類型的語言不一樣。在BASIC中,執(zhí)行上述代碼的時候不會產(chǎn)生異常,你可以在EXCEL的VBA開發(fā)環(huán)境里試一下,把 print改為MsgBox就可以,結(jié)果會輸出 1 。這說明Python并不是一種類似BASIC的弱類型語言。

另一方面,Python與C#有一個很大的差異就是在程序運(yùn)行過程中,同一變量名可以(在不同階段)代表不同類型的數(shù)據(jù),看看下邊的例子:

i = 1
print i,type(i),id(i)
i = 10000000000
print i,type(i),id(i)
i = 1.1
print i,type(i),id(i)

變量 i 的類型在程序執(zhí)行過程中分別經(jīng)歷了int、long和float的變化,這和靜態(tài)類型語言(如C等)有很大不同。靜態(tài)語言只要一個變量獲得了一個數(shù)據(jù)類 型,它就會一直是這個類型,變量名代表的是用來存放數(shù)據(jù)的內(nèi)存位置。而Python中使用的變量名只是各種數(shù)據(jù)及對象的引用,用id()獲取的才是存放數(shù) 據(jù)的內(nèi)存位置,我們輸入的1、10000000000和1.1三個數(shù)據(jù)均會保存在id()所指示的這些內(nèi)存位置中,直到垃圾回收車把它拉走(在系統(tǒng)確定你 不再使用它的時候)。這是動態(tài)語言的典型特征,它確定一個變量的類型是在給它賦值的時候。

另一方面,Python又是強(qiáng)類型的,試著運(yùn)行下邊的例子:

# -*- coding: utf-8 -*-
i = 10; j = 'ss'
print i+j
#正確的寫法是print str(i)+j,
輸出10ss

會產(chǎn)生一個異常:“TypeError: unsupported operand type(s) for +: 'int' and 'str'”。在BASIC等弱類型的語言中,上邊的例子會正常運(yùn)行并返回(雖然有時候是不可預(yù)期的)結(jié)果。

所以,我們說Python既是一種動態(tài)類型語言,同時也是一種強(qiáng)類型的語言,這點(diǎn)是和C#不同的地方。對于Python的這種變量的聲明、定義和使 用方式,C#程序員可能要花一段時間去適應(yīng),不過相信你會很快就喜歡上它,因?yàn)樗屖虑樽兊酶雍唵危ǘ也粫话踩?。而且,C# 4.0 已經(jīng)開始用類似的方式定義和使用變量(通過在變量名前加關(guān)鍵字dynamic),如果你先學(xué)了Python變量,將能夠更快的適應(yīng)C# 4.0的動態(tài)編程特征。

希望本文所述對大家的Python程序設(shè)計有所幫助。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

python動態(tài)性強(qiáng)類型用法實(shí)例

python動態(tài)性強(qiáng)類型用法實(shí)例:本文實(shí)例分析了python動態(tài)性強(qiáng)類型用法。分享給大家供大家參考。具體如下: Python變量聲明和定義 與C#不同,Python在使用變量之前無須定義它的類型,試著運(yùn)行下面的例子: i = 12 print i 從上邊我們可以看到,變量 i 在使用前并不需要定義,但是必須
推薦度:
標(biāo)簽: 動態(tài) 例子 實(shí)例
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top