python 基礎認識,弱類型,解釋執行

我們從第一個「hello world」開始。首先我們先進入電腦的控制檯輸入 python3 進入 python 解釋器模式。

例如我以 Mac 爲例 在 iTerm 終端輸入 python3 會進入解釋器模式。

Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 16:52:21)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

此時我們輸入 ```print(‘hello world’)````就可以打印出 「hello world」了。

我們的第一個 python 程序就這麼愉快的完成了。下面我們就開始來認識 python。

弱類型

首先 python 是弱類型語言,相對於強類型語言,它不需要聲明變量的類型。甚至粗暴到連聲明關鍵字都省略了。

瞭解 JavaScript 的同學都知道,它也是弱類型語言,聲明變量時也不需要指定類型,但好歹我們還需要使用聲明關鍵詞的(雖然可以省去不用,但是非常不建議)。

而python 不管這些,老夫就是直接開幹,別跟我扯那些沒有用的。難怪大家都說「人生苦短,我用python」。光看變量聲明,就讓我感受到了。期待更加深入的學習。

 int age = 0; // java 聲明一個整數型的變量
 var age = 0; //js 聲明一個變量 age 不指定數據類型。
 age = 0; // python 直接聲明

解釋執行

第二個特點是它屬於「解釋執行」類型語言。就如開頭我們所說會進入 python 解釋器模式,而這個解釋器就是用來解釋 python 語言的。

弄清楚之前,先簡單瞭解下什麼是「編譯執行」與「解釋執行」,以下都是大白話介紹可更好理解,如果不覺得嚴謹的可查閱相關資料。

首先計算機只認識二進制這個大家都知道。所以編寫的程序都要先轉成二進制代碼纔可以運行。否則計算機不認識啥都百搭。

但計算機認識的東西,人類看起來就很痛苦而且寫起來簡直生不如死。怎麼辦呢?這就是人類的聰明之處了,我先寫認識的,然後通過一種方式在轉成機器認識的不就完了嗎。

而在轉換的過程中有兩種實現方式:第一種就是:先編譯好在執行。第二種就是:執行的過程中再編譯,即:邊執行邊編譯。

所以先編譯好再執行的對應的就是「編譯執行」,邊執行邊編譯的就是「解釋執行」。

例如 C、C++:這類語言就屬於「編譯執行」,它們的優點在於只編譯一次,執行速度快。而缺點是不能誇平臺。

而像 Python、JavaScript 這類語言屬於「解釋執行」,它們的優點在於跨平臺,不管在window 還是其他平臺都可以執行。但缺點就是每次執行都會編譯所以速度慢。

python 代碼的執行步驟大概是:

開頭說 python 的解釋器,我們寫的每一行 python 代碼都是由它負責,解釋器由一個編譯器和一個虛擬機構成,編譯器負責將源代碼轉換成字節碼文件,而虛擬機負責執行字節碼。
python 代碼在運行前每個 .py 文件將被換轉成 .pyc 文件,.pyc 就是一種字節碼文件。

上下執行

我們人類在讀一篇文章的時候會從左至右,從上到下的順序進行閱讀。而機器也是如此,它在閱讀代碼的時候也是「從上而下」進行閱讀。

所以它的代碼執行順序就是「上下執行」,第一行沒有執行完,就不會執行第二行。但如果只有「上下執行」好像並不能滿足我們所有的需求。

繼續拿看書來說:

比如你在書中看到一段看不懂的話,你會怎麼做?我會去多看幾遍,直到看懂爲止。

如果有很多我不想看的內容怎麼辦?我會把不想看的內容直接跳過去,選擇我喜歡看的內容。

那程序是如何做到這點的呢?下個章節我們來詳細程序該如何執行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章