學習背景:
精通一門程式語言並編寫出自己喜歡的程式是我多年的夢想,一定要找時間實現。此時想起了高中時的我對程式設計的興趣十分濃厚,父母給自己購買了學習機插卡式的,只能敲basic程式碼,同時學校有386計算機課,經常和老師討論程式設計問題,時光一晃20多年過去了,程式設計放下了,但是我的夢想沒有放下。
我現在西藏拉薩出差已經連續將近2個月了正好看到老男孩在51cto網站上開設網路培訓Python語言學習班,,我猶豫了怕在高原堅持不下來,後來轉念一想早報名早學習,不能再耽誤下去了我毅然報了名花了5000多money,自己要給自己壓力否則人的惰性不容易客服,會讓我再一次失去。報名後看了課程安排,每一週有一節網路線上課,主要是解答問題和佈置作業及程式分析。大部分是自己看視訊學習。
初步接觸:
一、Python簡史
1、1989年由Guido寫Python語言編譯器。創造一種C和shell之間,功能全面,易學易用,可拓展的語言。1991年第一個Python編譯器誕生,用C語言實現的。
2、與2010年7月3日發現2.x版本的最後一個版本2.7,與2008年12月3日發行3.0版本,到目前2015年9月發行到3.5版本
3、2.7版本不會再有更新了,所有最新的標準庫的功能只在3.X版本里,且3.X版本把之前2.X版本的很多重複的,效率低下的內容進行了縮減,語法有一些進行了改變。
4、python3是現在和未來的語言,python2.x是過去的語言Python語言作者Guido van Rossum宣佈Python 2.7支援時間延長到2020年。
二、開發工具介紹
好的工具可以讓我們達到事半功倍的效果!
1、推薦安裝Pycharm,目前最新版本5.04,因為Pycharm是一個IDE開發工具,可以部分自動縮排、補充語句和查詢等功能,方便寫程式碼。
下載地址:http://www.jetbrains.com/pycharm/download/#section=windows Pycharm 5.0.4
下載地址:https://www.python.org/downloads/windows/ Python3.5.1
Python3.5.1 64位選擇x86-64 32位選擇x86
2、安裝python在windows中需要設定環境變數,我安裝python3.5時自動已經把環境變數設定好了,此時可以在命令符cmd裡任意目錄下輸入python都可以呼叫。
上圖環境變數path中 加入你目前安裝python的實際路徑 如d:\python34\ 如前面有資料則加一個;分號
三、基礎知識部分
說明:本筆記所有程式碼均使用python3.5版本,2.X版本不會再出現和討論。
1、列印hello world
世界上的第一個程式就是Hello World,由Brian Kernighan創作。所以無論哪種語言,我們第一步基本上都是實現一個hello world。
左圖上方為pycharm5.0.4的程式,右圖上方為windows cmd 用python執行的程式 紅色為編寫的程式碼,綠色為執行的效果。
注:pycharm只是python的編輯工具,最終還是要通過python進行程式執行和編譯。cmd下直接呼叫python適用於程式碼少,臨時測試簡單的程式。同時python也自帶編輯工具IDLE。
對此程式進行解釋:
print() 是python中經常要用到的列印輸出語句,可把要執行的結果通過此語句輸出到螢幕。
(“ ”)括號中的內容是我們要輸出的字元或變數及表示式,“”用雙引號擴起來表明是一個字串。
2、計算機編碼
計算機是對二進位制0,1進行處理的,所以無論字母、數字、符號等都要進行計算機編碼後才能工作,下面介紹一下幾種常用編碼:
1)ASCII
ASCII(American Standard Code for Information Interchange,美國標準資訊交換程式碼)是基於拉丁字母的一套電腦編碼系統,
主要用於顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,並等同於國際標準ISO/IEC 646。
2) Unicode
Unicode(統一碼、萬國碼、單一碼)是電腦科學領域裡的一項業界標準,包括字符集、編碼方案等。Unicode 是為了解決傳統的字元編碼方案的侷限而產生的,它為每種語言中的每個字元設定了統一併且唯一的二進位制編碼,以滿足跨語言、跨平臺進行文字轉換、處理的要求。1990年開始研發,1994年正式公佈。
3) UTF-8
UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字元編碼,又稱萬國碼。由Ken Thompson於1992年建立。現在已經標準化為RFC 3629。UTF-8用1到6個位元組編碼UNICODE字元。用在網頁上可以同一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。
目前我們Python3版本的預設編碼標準就是採用UTF8。所以在python2程式的第一行 #-*- coding:utf-8 -*- 可以不用寫了。
4) GBK及GB2321

編碼好比姓名長度,如果你的程式碼只需要簡體中文那麼選擇GB2312最適合了,佔用位元組少,處理速度快,目前資訊化的發展和今後相容性及擴充套件性的需求,我們要考慮各個國家語言的人都能看到,不會產生亂碼,所以一般我們用UTF8編碼,優點是可變長度的,如使用ascii碼時只需佔用1個位元組,會根據需要進行變化來動態適應。
3、基礎規則及運算
識別符號:
就是我們常說的定義的變數、表示式和函式、類的命名規則
- 第一個字元必須是字母表中字母或下劃線'_'。
- 識別符號的其他的部分有字母、數字和下劃線組成。
- 識別符號對大小寫敏感。
在Python 3中,非-ASCII 識別符號也是允許的了。比如:中國=1 美國=0 print(中國+美國) 結果1
我們可以用中文啦,但是為了相容性和其它程式合作開發,所以目前除非是純python開發應用,否則不建議使用。
python保留字
保留字即關鍵字,我們不能把它們用作任何識別符號名稱。Python的標準庫提供了一個keyword module,可以輸出當前版本的所有關鍵字:>>> import keyword
註釋
Python中單行註釋以#開頭,多行註釋用三個單引號(''')或者三個雙引號(""")將註釋括起來。註釋的內容在程式中不會執行!
行與縮排
python最具特色的就是使用縮排來表示程式碼塊。縮排的空格數是可變的,但是同一個程式碼塊的語句必須包含相同的縮排空格數。
資料型別
python中數有四種類型:整數、浮點數和複數。
- 整數, 如 1
- 浮點數 如 1.23、3E-2
- 複數 如 1 + 2j、 1.1 + 2.2j
字串
- python中單引號和雙引號使用完全相同。
- 使用三引號('''或""")可以指定一個多行字串。
- 轉義符 '\' 可續接下面的字元 ‘\n’ 會自動換行
- 自然字串, 通過在字串前加r或R。 如 r"this is a line with \n" 則\n會顯示,並不是換行。
- python允許處理unicode字串,加字首u或U, 如 u"this is an unicode string"。
- 字串是不可變的。
- 按字面意義級聯字串,如"this " "is " "string"會被自動轉換為this is string。
Python算術運算子
以下假設變數a為10,變數b為20:
比較運算:
賦值運算:
邏輯運算:
成員運算:
身份運算:
位運算:
運算子優先順序: