Python 是強(qiáng)類型的動(dòng)態(tài)腳本語(yǔ)言 。
強(qiáng)類型:不允許不同類型相加
動(dòng)態(tài):不使用顯示數(shù)據(jù)類型聲明,且確定一個(gè)變量的類型是在第一次給它賦值的時(shí)候
腳本語(yǔ)言:一般也是解釋型語(yǔ)言,運(yùn)行代碼只需要一個(gè)解釋器,不需要編譯
強(qiáng)類型語(yǔ)言和弱類型語(yǔ)言
1.強(qiáng)類型語(yǔ)言:使之強(qiáng)制數(shù)據(jù)類型定義的語(yǔ)言。沒(méi)有強(qiáng)制類型轉(zhuǎn)化前,不允許兩種不同類型的變量相互操作。強(qiáng)類型定義語(yǔ)言是類型安全的語(yǔ)言,如Java、C# 和 python,比如Java中“int i = 0.0;”是無(wú)法通過(guò)編譯的;
2.弱類型語(yǔ)言:數(shù)據(jù)類型可以被忽略的語(yǔ)言。與強(qiáng)類型語(yǔ)言相反, 一個(gè)變量可以賦不同數(shù)據(jù)類型的值,允許將一塊內(nèi)存看做多種類型,比如直接將整型變量與字符變量相加。C/C++、PHP都是弱類型語(yǔ)言,比如C++中“int i = 0.0;”是可以編譯運(yùn)行的
靜態(tài)和動(dòng)態(tài)類型語(yǔ)言
靜態(tài)和動(dòng)態(tài)是針對(duì)變量的數(shù)據(jù)類型而言的,區(qū)別如下:
1、使用靜態(tài)類型語(yǔ)言編寫(xiě)的代碼中,要聲明變量的數(shù)據(jù)類型,而且不同數(shù)據(jù)類型的變量不允許直接賦值,它的數(shù)據(jù)類型是編譯期間進(jìn)行檢查的。
2、靜態(tài)類型語(yǔ)言在使用變量之前,需要為它們分配好內(nèi)存。
3、靜態(tài)類型語(yǔ)言功能強(qiáng)大,但相對(duì)難以學(xué)習(xí),并且靈活性差。
4、動(dòng)態(tài)類型語(yǔ)言與靜態(tài)語(yǔ)言剛好相反,它只在程序運(yùn)行期間才去進(jìn)行數(shù)據(jù)類型檢查,不需要給變量指定數(shù)據(jù)類型,它會(huì)在第一次同仁給變量時(shí),在內(nèi)部記錄數(shù)據(jù)類型。
5、動(dòng)態(tài)類型語(yǔ)言雖然快速靈活,但在代碼運(yùn)行前很難找到bug,所以提升了開(kāi)發(fā)速度,但失去程序的健壯性。
1)靜態(tài)類型語(yǔ)言:c、c++、c#、object-c、Java等
2)動(dòng)態(tài)類型語(yǔ)言:Python、ruby、PHP、JavaScript、erlang等
以上這篇Python的語(yǔ)言類型(詳解)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選