python弱類型語言
⑴ 弱類型語言的優缺點
強類型語言(java、Java、.net 、python、C++),當你定義一個變數是某個類型,如果不經過代碼顯式轉換(強制轉化)過,它就永遠都是這個類型,如果把它當做其他類型來用,就會報錯
如: int a =5;
弱類型語言(php、js),你想把這個變數當做什麼類型來用,就當做什麼類型來用,語言的解析器會自動(隱式)轉換。
如: var a =5;
String b ="5";
int result = a+b;
因為 a與b 是java 語言的類型定義,直接寫a+b無法編譯通過
var b ="5";
var result = a+b;
因為 a與b 是js語言的弱類型定義,直接寫a+b結果為10,因為弱類型語言在運行過程中,存在變數類型的隱式轉換
因為弱類型語言在運行過程中,存在變數類型的隱式轉換,多了一些需要執行的操作,並且,分配內存時,會考慮通用而多分配一些,而強類型則專門為各種類型的變數量身定做地分配內存,內存利用率顯然比弱類型會高。
⑵ 強類型語言和弱類型的語言有什麼區別
拿C++和php打比,php強語言,c++弱語言.
1)語法有區別,最明顯的弱語言不需要設定變數類型,強語言需要;
2)底層上,弱語言是解釋執行,強語言是編譯執行(java另說,生成中間位元組碼);
3)性能上差距太大,強語言大大快於php;
4)開發效率,弱語言要快於強語言,所以web開發弱語言很高效;
5)學習曲線不同,弱語言簡單好學但是精通的太少了,很多強語言的特性都沒有或者牽強的模擬實現;強語言入門門檻高,學不容易,語言特性多,逼著你都學會,另外由於傳統軟體行業對編程的要求本來就高於web行業導致寫傳統軟體的人的編程素質要遠遠強於web行業的;
6)最佳的應用場景不同,php只能做web,c++做底層 軟體,也可以做web(但是沒人這么做)
我用最通俗的話告訴你了區別,但是不僅限於這些.
所以無論做軟體還是web,建議強語言(c++ java等)和弱語言(php python perl ruby等)都至少懂一種,另外單獨的像js這種基於原型的客戶端腳本語言也必須要會!
⑶ python 是什麼類型的語言
弱類型,解釋型。
也許你會從一些初學者口中,聽說Python是強類型。我只想說,這是典型的不懂裝懂。Python是絕對的弱類型。強類型的特性,就是IDE可以通過反射,獲取變數的數據類型,Python顯然不具備這個特點。
int a=「1」;
a=1
強類型(JAVA,C#,C++),這里會報錯。。。。
var a="1"; //JS
$a="1" //PHP
a="1" //python
a=1
這里不會報錯。。。
⑷ 怎麼總有人說python是弱類型語言
首先,python的not xxx,幾乎與C的(!xxx) 沒什麼區別。
int與float的問題,我不是專家,不清楚專業上該怎麼表述,直觀感覺就是小數據類型轉換成大數據類型的操作。
說C是弱類型顯然是誇張了,主要問題是void*這種指針可以任意轉換,這樣類型細節就丟掉了。
⑸ Python是不是弱類型如果是的話是不是僅僅因此就不需要泛型了
Python 是強類型的
Python 不需要泛型是因為 Python 的變數簽名是動態的,有 lazy binding 效果。比如一個函數傳入 connection 參數,然後函數中調用 connection.close() 。直到你調用這個函數的時候(運行期),虛擬機才會去查找 close 方法,而不是像靜態類型語言一樣在編譯期或裝載期就事先建立符號表。
⑹ python 是強類型語言嗎
是強類型,是因為他不能隱式類型轉換,只能顯示類型轉換
http://www.hu.com/question/20224705/answer/14394999
⑺ 為什麼說 Python 是強類型語言
因為那是不懂裝懂的初學者在相互洗腦。。。。Python是徹頭徹尾的弱類型。
強類型和弱類型的最核心區別,在於IDE是否可以通過反射,實時感知變數的數據類型,Python顯然不具備這個特點。
string a=「1」;
a=1;
強類型(JAVA,C#,C++),這里會報錯。。。。
var a="1"; //JS
$a="1"; //PHP
a="1" //python
a=1
弱類型,這里不報錯。。。
⑻ python是動態類型的到底算是強類型的還是弱類型的呢
個人理解應該是強類型的動態腳本語言。
理由:
數據類型不會隱式轉換,『1』+1 報typeerror;是為強類型
變數可以重新綁定新的值,可以是不同類型的;是為動態
vartest = 1
vartest = 『1』
vartest = [1,2,3]
⑼ 有那些語言屬於弱類語言啊
樓主你好, 弱類型語言也稱為弱類型定義語言。與強類型定義相反。像vb,php,javascript,python,vbscript等就屬於弱類型語言.例如:在vbscript中,可以將字元串 12 和整數 3 進行連接得到字元串 123,然後可以把它看成整數 123,而不需要顯式轉換。
弱類型有時顯得很方便,有時卻又極易出錯。比如:
var result=5+5; //two numbers
alert(result); //outputs "10"
var result=5+'5'; // a number and a string
alert(result); //outputs "55"
因此使用弱類型語言也要格外注意數據類型防止出錯。
希望我的回答能幫助到您!
⑽ 怎樣才能學好弱類型語言,比如Python
弱類型語言也稱為弱類型定義語言。與強類型定義相反。像vb,php,javascript,python,vbscript等就屬於弱類型語言.例如:在vbscript中,可以將字元串 12 和整數 3 進行連接得到字元串 123,然後可以把它看成整數 123,而不需要顯式轉換。
弱類型有時顯得很方便,有時卻又極易出錯。比如:
var result=5+5; //two numbers
alert(result); //outputs "10"
var result=5+'5'; // a number and a string
alert(result); //outputs "55"
因此使用弱類型語言也要格外注意數據類型防止出錯。
其實學什麼語言的方法都差不多。我覺得有兩點最重要:基礎和實踐。
你需要一本python基礎教程,哪一本都行,只要你喜歡。初學者一定要通讀,每一章都讀。基本的語法、基本的概念一定要熟悉。可以同時開著電腦,照者書中的例題練習。書看完以後可以抽時間翻翻官方的類參考手冊。不要死記,了解裡面都提供了哪些功能即可。以後真用到了再來那裡查。
實踐也很重要。不實踐,會撿了芝麻丟了西瓜。覺得自己代碼寫不好,可以看看別人寫的代碼。挑選質量好、簡單一點的。第三方庫了解一些常用的。然後自己找個項目做,簡單一點的。如果有機會參與公司的項目,最好積極參與,這是學習的好機會。