本文將分為三大部分為讀者詳解Python如何學習入門,請大家認真看完
一、Python學習大方向
學Python這條路怎麼走?這是很多初學者都會問的一個問題,這個時候要問下自己,學Python想幹嘛?為了興趣?還是為了找份工作?亦或是其他目的。
Python的應用領域非常廣泛,如數據分析/挖掘、機器學習、爬蟲、Web開發及遊戲開發等。
不論選擇哪一條路,Python基礎,常用的數據分析擴展包Numpy、pandas及matplotlib等都是必學的。具體的學習路線圖如下。
Python基礎
Python作為一門程式語言,首先需要學習Python的語法基礎。
Python數據分析三大件
對於Python數據分析來說,常用到三個數據分析擴展包:Numpy、pandas、matplotlib。
在掌握了Python基礎及一些常用的庫後,就可以深入學習某個領域了,如機器學習、Python爬蟲、Python Web開發等。
方向一:Python機器學習
Python機器學習可以用於數據分析/挖掘、人工智慧等領域,但對於數學有一定要求,Python只是一個工具而已。
方向二:Python爬蟲
Python爬蟲主要用於數據採集、競品監控等,屬於相對灰色的一個行業。
方向三:Python Web開發
實際的Web開發基本都是前後端分離的,前端人員負責前端開發,切圖、頁面製作等,後端開發人員負責後端一些功能的開發等。
二、Python學習小技巧
【特點】
1 Python使用C語言開發,但是Python不再有C語言中的指針等複雜的數據類型。
2 Python具有很強的面向對象特性,而且簡化了面向對象的實現。它消除了保護類型、抽象類、接口等面向對象的元素。
3 Python代碼塊使用空格或制表符縮進的方式分隔代碼。
4 Python僅有31個保留字,而且沒有分號、begin、end等標記。
5 Python是強類型語言,變量創建後會對應一種數據類型,出現在統一表達式中的不同類型的變量需要做類型轉換。
【搭建開發環境】
1 可以到www.python.org下載安裝包,然後通過configure、make、make install進行安裝。
2 也可以到www.activestate.com去下載ActivePython組件包。(ActivePython是對Python核心和常用模塊的二進位包裝,它是ActiveState公司發布的Python開發環境。ActivePython使得Python的安裝更加容易,並且可以應用在各種作業系統上。ActivePython包含了一些常用的Python擴展,以及Windows環境的編程接口)。對ActivePython來說,如果你是windows用戶,下載msi包安裝即可;如果你是Unix用戶,下載tar.gz包直接解壓即可。
3 Python的IDE,包括PythonWin、Eclipse+PyDev插件、Komodo、EditPlus
【版本】
python2與python3是目前主要的兩個版本。
如下兩種情況下,建議使用python2:
1 你無法完全控制你即將部署的環境時;
2 你需要使用一些特定的第三方包或擴展時;
python3是官方推薦的且是未來全力支持的版本,目前很多功能提升僅在python3版本上進行。
【hello world】
1 創建hello.py
2 編寫程序:
if __name__ == '__main__':
print "hello word"
3 運行程序:
python ./hello.py
【注釋】
1 無論是行注釋還是段注釋,均以#加一個空格來注釋。
2 如果需要在代碼中使用中文注釋,必須在python文件的最前面加上如下注釋說明:
# -* - coding: UTF-8 -* -
3 如下注釋用於指定解釋器
#! /usr/bin/python
【文件類型】
1 Python的文件類型分為3種,即原始碼、位元組代碼和優化代碼。這些都可以直接運行,不需要進行編譯或連接。
2 原始碼以.py為擴展名,由python來負責解釋;
3 源文件經過編譯後生成擴展名為.pyc的文件,即編譯過的位元組文件。這種文件不能使用文本編輯器修改。pyc文件是和平台無關的,可以在大部分作業系統上運行。如下語句可以用來產生pyc文件:
4 經過優化的源文件會以.pyo為後綴,即優化代碼。它也不能直接用文本編輯器修改,如下命令可用來生成pyo文件:
【變量】
1 python中的變量不需要聲明,變量的賦值操作即使變量聲明和定義的過程。
2 python中一次新的賦值,將創建一個新的變量。即使變量的名稱相同,變量的標識並不相同。用id()函數可以獲取變量標識:
3 如果變量沒有賦值,則python認為該變量不存在
4 在函數之外定義的變量都可以稱為全局變量。全局變量可以被文件內部的任何函數和外部文件訪問。
5 全局變量建議在文件的開頭定義。
6 也可以把全局變量放到一個專門的文件中,然後通過import來引用:
gl.py文件中內容如下:
use_global.py中引用全局變量:
【常量】
python中沒有提供定義常量的保留字。可以自己定義一個常量類來實現常量的功能。
【數據類型】
1 python的數字類型分為整型、長整型、浮點型、布爾型、複數類型。
2 python沒有字符類型
3 python內部沒有普通類型,任何類型都是對象。
4 如果需要查看變量的類型,可以使用type類,該類可以返回變量的類型或創建一個新的類型。
5 python有3種表示字符串類型的方式,即單引號、雙引號、三引號。單引號和雙引號的作用是相同的。python程式設計師更喜歡用單引號,C/Java程式設計師則習慣使用雙引號表示字符串。三引號中可以輸入單引號、雙引號或換行等字符。
【運算符和表達式】
1 python不支持自增運算符和自減運算符。例如i++/i-是錯誤的,但i+=1是可以的。
2 1/2在python2.5之前會等於0.5,在python2.5之後會等於0。
3 不等於為!=或<>
4 等於用==表示
5 邏輯表達式中and表示邏輯與,or表示邏輯或,not表示邏輯非
【控制語句】
1 條件語句:
2 條件語句:
3 條件嵌套:
4 python本身沒有switch語句。
5 循環語句:
6 循環語句:
7 python不支持類似c的for(i=0;i<5;i++)這樣的循環語句,但可以藉助range模擬:
【數組相關】
1 元組(tuple):python中一種內置的數據結構。元組由不同的元素組成,每個元素可以存儲不同類型的數據,如字符串、數字甚至元素。元組是防寫的,即元組創建之後不能再修改。元組往往代表一行數據,而元組中的元素代表不同的數據項。可以把元組看做不可修改的數組。創建元組示例如下:
2 列表(list):列表和元組相似,也由一組元素組成,列表可以實現添加、刪除和查找操作,元素的值可以被修改。列表是傳統意義上的數組。列表創建示例如下:
可以使用append方法來在尾部追加元素,使用remove來刪除元素。
3 字典(dictionary):由鍵-值對組成的集合,字典中的值通過鍵來引用。鍵和值之間用冒號隔開,鍵-值對之間用逗號隔開,並且被包含在一對花括號中。創建示例如下:
4 序列:序列是具有索引和切片能力的集合。元組、列表和字符串都屬於序列。
【函數相關】
1 python程序由包(package)、模塊(module)和函數組成。包是由一系列模塊組成的集合。模塊是處理某一類問題的函數和類的集合。
2 包就是一個完成特定任務的工具箱。
3 包必須含有一個__init__.py文件,它用於標識當前文件夾是一個包。
4 python的程序是由一個個模塊組成的。模塊把一組相關的函數或代碼組織到一個文件中,一個文件即是一個模塊。模塊由代碼、函數和類組成。導入模塊使用import語句。
5 包的作用是實現程序的重用。
6 函數是一段可以重複多次調用的代碼,函數定義示例如下:
7 函數返回值可以用return來控制。
【字符串相關】
1 格式化輸出:
2 用+進行字符串的合併:
3 字符串截取可以通過索引/切片,也可以通過split函數。
4 通過切片截取字符串:
5 python使用==和!=來進行字符串比較。如果比較的兩個變量的類型不相同,那麼結果必然為不同。
【文件處理】
1 簡單處理文件:
2 讀取文件可以使用readline()函數、readlines()函數和read函數。
3 寫入文件可以使用write()、writelines()函數
【對象和類】
1 python用class保留字來定義一個類,類名的首字符要大寫。當程式設計師需要創建的類型不能用簡單類型來表示時,就需要定義類,然後利用定義的類創建對象。定義類示例:
2 當一個對象被創建後,包含了三方面的特性,即對象的句柄、屬性和方法。創建對象的方法:
3 python沒有保護類型的修飾符
4 類的方法也分為公有方法和私有方法。私有函數不能被該類之外的函數調用,私有的方法也不能被外部的類或函數調用。
5 python使用函數」staticmethod()「或」@ staticmethod「指令的方法把普通的函數轉換為靜態方法。靜態方法相當於全局函數。
6 python的構造函數名為__init__,析構函數名為__del__
7 繼承的使用方法:
【連接mysql】
1 用MySQLdb模塊操作MySQL資料庫非常方便。示例代碼如下:
三、Python學習視頻教程
當然在學習Python的道路上肯定會困難,沒有好的學習資料,怎麼去學習呢?
註:想學習Python的小夥伴們
可以免費領取從0到1完整學習資料 視頻 ,如下:
標題已經講過,如果這篇文章不能帶你入門Python學習(除非你不好好學習),我也無臉面呆在編程界了,這篇文章真的是系統、完整的講了Python如何學習和入門,加油吧,小夥伴們!