零基礎學Python--如何開始?小憨微課2019-03-09 17:03:41

為什麼選擇Python,零基礎該如何學?經常會有同學問我為什麼選擇Python。我很喜歡這門語言,因為它的簡潔靈活,易學,易讀,可移植並且功能強大。

高階

可以說,每一代程式語言的產生,我們都會達到一個新的高度。從組合語言,到C Pascal等,伴隨著C語言的誕生,產生了C++、Java這樣的現代編譯語言,之後有了強大的可以進行系統呼叫的解釋性指令碼語言Python、 Perl。。。

比如Python中就有一些高階的資料結構,列表和字典就是內建於語言本身可以直接使用的,在核心語言中提供這些重要的構建單元,可以縮短開發時間和程式碼量,產生可讀性更好的程式碼。

面向物件

Python是面向物件程式設計

記憶體管理器

C 或者 C++最大的弊病在於記憶體管理是由開發者負責的。所以哪怕是對於一個很少訪問、修改和管理記憶體的應用程式,程式設計師也必須在執行了基本任務之外履行這些職責。這些加諸在開發者身上的沒有必要的負擔和責任常常會分散精力。

在 Python 中,由於記憶體管理是由 Python 直譯器負責的,所以開發人員就可以從記憶體事務中解放出來,全神貫注於最直接的目標,僅僅致力於開發計劃中首要的應用程式。這會使錯誤更少、程式更健壯、開發週期更短。

解釋性和編譯性

Python 是一種解釋型語言,這意味著開發過程中沒有了編譯這個環節。一般來說,由於不是以本地機器碼執行,純粹的解釋型語言通常比編譯型語言執行的慢。然而,類似於 Java,Python實際上是位元組編譯的,其結果就是可以生成一種近似機器語言的中間形式。這不僅改善了 Python的效能,還同時使它保持瞭解釋型語言的優點。

Python為什麼執行速度相較於C語言慢

因為Python等動態語言每一個簡單的操作都需要大量的指令才能完成。Python是動態語言,變數只是物件的引用,比如對於一個簡單的操作:a+b,在C語言中只需要一個機器指令ADD就好,而對於Python而言,變數a和b本身沒有型別,而它們的值有型別,所以在相加之前需要先判斷型別,之後,讀取數值,相加,生成一個新物件,將運算結果存入,返回物件,當然,可能還會考慮記憶體溢位等問題。

Python基礎

資料型別

python中的資料型別可以分為:字串、布林型別、整數、浮點數、數字、列表、元組、字典和日期。

字串

不可變物件,可使用單引號,雙引號擴起來表示單行字串,使用三引號表示多行字串,在三引號可以自由的使用單引號和雙引號。

ASCII碼

字串比較特殊的是編碼問題我們知道,計算機是美國人發明的,最初只有127個字母被編碼到計算機中,包括大小寫字母、數字和一些符號,這個編碼表被稱為ASCII碼錶。

Unicode

要處理一箇中文顯然一個位元組是不夠用的,又不能和ASCII碼衝突,因此中國製定了GB2312編碼。而全世界有很多的語言,在多語言混合的文字中,顯示出來的話一定會有亂碼,因此,Unicode應運而生,它將所有語言統一到一套編碼中,就不會有亂碼問題了。ASCII碼用一個位元組表示了一個字元,而Unicode用兩個位元組表示一個字元。以Unicode表示的字串用u‘。。。’表示。

UTF-8

經常在。py檔案的開頭寫的“#coding:utf-8”是什麼意思?我們知道Unicode編碼要比ASCII編碼多一倍的儲存空間,在儲存和傳輸上會十分的不划算,如果寫的文字全是英文的話,使用Unicode編碼就十分浪費。於是UTF-8編碼出現了,UTF-8編碼是把一個Unicode字元根據不同的數字大小編碼成1-6個位元組,並且可以將ASCII碼看成是UTF-8的一部分。

編碼解碼

在Python2。7中,作業系統給它什麼編碼的字串,它就接收啥格式的字串,預設的格式與使用的格式不同,就會出現各種錯誤。

解決方法:

1。知道系統所使用的編碼格式

2。把獲取的頁面先用系統格式解碼,然後在編碼為utf8格式

3。你的指令碼中統一使用uft8編碼

4。處理結束,把你的字串先utf8解碼,然後系統格式編碼。

Python中,通常使用decode()和encode()進行解碼和編碼。

閉包

Python中的閉包是什麼?

如果在一個內部函數里,對在外部作用域的變數進行引用,那麼內部函式就被認為是閉包。用Python的語言介紹就是,呼叫一個函式A,這個函式A返回了一個函式B給你,這個返回的函式B就叫做閉包。

以上就是關於Python的基礎認識啦,小夥伴有不明白的地方歡迎留言告訴我們喲~

零基礎學Python--如何開始?有人耍流氓了2019-03-09 15:28:09

給你些計算機程式設計學習資料,有書籍,開發工具,影片教程下載,先看書,看要直接安裝開發環境,練習,www。xen123。cn