Python學習100天——01.初識Python
Python簡介
Python的歷史
-
1989年聖誕節:Guido von Rossum開始寫Python語言的編譯器。
-
1991年2月:第一個Python編譯器(同時也是直譯器)誕生,它是用C語言實現的(後面),可以呼叫C語言的庫函式。在最早的版本中,Python已經提供了對“類”,“函式”,“異常處理”等構造塊的支援,還有對列表、字典等核心資料型別,同時支援以模組為基礎來構造應用程式。
-
1994年1月:Python 1.0正式釋出。
-
2000年10月16日:Python 2.0釋出,增加了完整的
-
2008年12月3日:Python 3.0釋出,它並不完全相容之前的Python程式碼,不過因為目前還有不少公司在專案和運維中使用Python 2.x版本,所以Python 3.x的很多新特性後來也被移植到Python 2.6/2.7版本中。
目前我使用的Python 3.7.x的版本是在2018年釋出的,Python的版本號分為三段,形如A.B.C。其中A表示大版本號,一般當整體重寫,或出現不向後相容的改變時,增加A;B表示功能更新,出現新功能時增加B;C表示小的改動(例如:修復了某個Bug),只要有修改就增加C。如果對Python的歷史感興趣,可以閱讀名為
Python的優缺點
Python的優點很多,簡單的可以總結為以下幾點。
-
簡單明瞭,學習曲線低,比很多程式語言都容易上手。
-
開放原始碼,擁有強大的社群和生態圈,尤其是在資料分析和機器學習領域。
-
解釋型語言,天生具有平臺可移植性,程式碼可以工作於不同的作業系統。
-
對兩種主流的程式設計正規化(面向物件程式設計和函數語言程式設計)都提供了支援。
-
程式碼規範程度高,可讀性強,適合有程式碼潔癖和強迫症的人群。
Python的缺點主要集中在以下幾點。
-
執行效率稍低,對執行效率要求高的部分可以由其他語言(如:C、C++)編寫。
-
程式碼無法加密,但是現在很多公司都不銷售賣軟體而是銷售服務,這個問題會被弱化。
-
在開發時可以選擇的框架太多(如Web框架就有100多個),有選擇的地方就有錯誤。
Python的應用領域
目前Python在Web應用後端開發、雲基礎設施建設、DevOps、網路資料採集(爬蟲)、自動化測試、資料分析、機器學習等領域都有著廣泛的應用。
安裝Python直譯器
想要開始Python程式設計之旅,首先得在自己使用的計算機上安裝Python直譯器環境,下面將以安裝官方的Python直譯器為例,講解如何在不同的作業系統上安裝Python環境。官方的Python直譯器是用C語言實現的,也是使用最為廣泛的Python直譯器,通常稱之為CPython。除此之外,Python直譯器還有Java語言實現的Jython、C#語言實現的IronPython以及PyPy、Brython、Pyston等版本,有興趣的讀者可以自行了解。
Windows環境
可以在
如果系統顯示api-ms-win-crt*.dll檔案缺失,可以參照
Linux環境
Linux環境自帶了Python 2.x版本,但是如果要更新到3.x的版本,可以在
-
安裝依賴庫(因為沒有這些依賴庫可能在原始碼構件安裝時因為缺失底層依賴庫而失敗)。
yum -y install wget gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
-
下載Python原始碼並解壓縮到指定目錄。
wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tar.xz
xz -d Python-3.7.6.tar.xz
tar -xvf Python-3.7.6.tar
-
切換至Python原始碼目錄並執行下面的命令進行配置和安裝。
cd Python-3.7.6
./configure --prefix=/usr/local/python37 --enable-optimizations
make && make install
-
修改使用者主目錄下名為.bash_profile的檔案,配置PATH環境變數並使其生效。
cd ~
vim .bash_profile
# ... 此處省略上面的程式碼 ...
export PATH=$PATH:/usr/local/python37/bin
# ... 此處省略下面的程式碼 ...
-
啟用環境變數。
source .bash_profile
macOS環境
macOS也自帶了Python 2.x版本,可以通過
執行Python程式
確認Python的版本
python --version
在Linux或macOS系統的終端中鍵入下面的命令。
python3 --version
當然也可以先輸入python
或python3
進入互動式環境,再執行以下的程式碼檢查Python的版本。
import sys
print(sys.version_info)
print(sys.version)
編寫Python原始碼
可以用文字編輯工具(推薦使用
print('hello, world!')
執行程式
切換到原始碼所在的目錄並執行下面的命令,看看螢幕上是否輸出了"hello, world!"。
python hello.py
或
python3 hello.py
程式碼中的註釋
註釋是程式語言的一個重要組成部分,用於在原始碼中解釋程式碼的作用從而增強程式的可讀性和可維護性,當然也可以將原始碼中不需要參與執行的程式碼段通過註釋來去掉,這一點在除錯程式的時候經常用到。註釋在隨原始碼進入前處理器或編譯時會被移除,不會在目的碼中保留也不會影響程式的執行結果。
-
單行註釋 - 以#和空格開頭的部分
-
多行註釋 - 三個引號開頭,三個引號結尾
""" 第一個Python程式 - hello, world! 向偉大的Dennis M. Ritchie先生致敬 Version: 0.1 Author: 駱昊 """ print('hello, world!') # print("你好, 世界!")
Python開發工具
IDLE - 自帶的整合開發工具
IDLE是安裝Python環境時自帶的整合開發工具,如下圖所示。但是由於IDLE的使用者體驗並不是那麼好所以很少在實際開發中被採用。
IPython - 更好的互動式程式設計工具
IPython是一種基於Python的互動式直譯器。相較於原生的Python互動式環境,IPython提供了更為強大的編輯和互動功能。可以通過Python的包管理工具pip安裝IPython,具體的操作如下所示。
pip install ipython
或
pip3 install ipython
安裝成功後,可以通過下面的ipython命令啟動IPython,如下圖所示。
Sublime Text - 高階文字編輯器
-
首先可以通過
-
安裝包管理工具。
-
通過快捷鍵Ctrl+`或者在View選單中選擇Show Console開啟控制檯,輸入下面的程式碼。
-
Sublime 3
import urllib.request,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();urllib.request.install_opener(urllib.request.build_opener(urllib.request.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib.request.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())
-
Sublime 2
import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp)ifnotos.path.exists(ipp)elseNone;urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read());print('Please restart Sublime Text to finish installation')
-
在瀏覽器中輸入 https://sublime.wbond.net/Package%20Control.sublime-package 下載包管理工具的安裝包,並找到安裝Sublime目錄下名為"Installed Packages"的目錄,把剛才下載的檔案放到這個檔案加下,然後重啟Sublime Text就搞定了。
-
-
安裝外掛。通過Preference選單的Package Control或快捷鍵Ctrl+Shift+P開啟命令面板,在面板中輸入Install Package就可以找到安裝外掛的工具,然後再查詢需要的外掛。我們推薦大家安裝以下幾個外掛:
-
SublimeCodeIntel - 程式碼自動補全工具外掛。
-
Emmet - 前端開發程式碼模板外掛。
-
Git - 版本控制工具外掛。
-
Python PEP8 Autoformat - PEP8規範自動格式化外掛。
-
ConvertToUTF8 - 將本地編碼轉換為UTF-8。
-
說明:事實上
PyCharm - Python開發神器
PyCharm的安裝、配置和使用在
練習
-
在Python互動式環境中輸入下面的程式碼並檢視結果,請嘗試將看到的內容翻譯成中文。
import this
說明:輸入上面的程式碼,在Python的互動式環境中可以看到Tim Peter撰寫的
-
學習使用turtle在螢幕上繪製圖形。
說明:turtle是Python內建的一個非常有趣的模組,特別適合對計算機程式設計進行初體驗的小夥伴,它最早是Logo語言的一部分,Logo語言是Wally Feurzig和Seymour Papert在1966發明的程式語言。
import turtle turtle.pensize(4) turtle.pencolor('red') turtle.forward(100) turtle.right(90) turtle.forward(100) turtle.right(90) turtle.forward(100) turtle.right(90) turtle.forward(100) turtle.mainloop()
提示