Python作為一門新型的編程語言(一般常用作腳本語言)很受歡迎,畢竟相對其他的編程語言(Java ,C#等)來說比較容易入手。那么,在學習玩入門Python的時候,應該從哪方面入手,學習流程是怎樣的呢?以下是小編為你整理的初學者怎么學好python ?
基礎知識:學習每一種新的編程語言都是從最基本的開始,對于python而言也是需要先學習其基礎知識。
?
python的基礎知識包括:變量和數(shù)據(jù)類型,List和Tuple,條件判斷和循環(huán),Dict和Set, 函數(shù),切片,迭代和列表生成式。 ?
注意:學習基礎知識切莫著急,一定要打好基礎,這樣才會更好的應用python。 ?
進階知識:學完掌握基礎知識之后,就要學習進階知識了。 ?
python的進階知識包括:函數(shù)式編程,模塊,面向?qū)ο缶幊袒A,類的繼承和定制類。 ?
python裝飾器:裝飾器是很重要的一個知識點。 ?
關于裝飾器需要涉及到函數(shù)作用域.閉包的使用和裝飾器的概念及使用。 ?
如何搭建環(huán)境
學習爬蟲首先學習Python,建議通過**mooc和《笨方法學Python》來實現(xiàn)入門,那本書的內(nèi)容可以有所取舍。通過這兩個途徑再上網(wǎng)上針對性地查找相關內(nèi)容完全可以入門,重點在于理解“面向?qū)ο蟆薄? ?
爬蟲入門首先要明白一些網(wǎng)絡技術,了解TCP/IP參考模型,并且對應用層的HTTP協(xié)議的方法和工作原理有一定的認識。爬蟲爬取網(wǎng)頁內(nèi)容,大多數(shù)網(wǎng)頁服務由HTTP協(xié)議實現(xiàn)。 ?
正式學習爬蟲庫urllib和正則表達式,urllib靈活性很高,并且和你所學的網(wǎng)絡原理、HTTP原理非常貼合,利于新手學習,正則表達式看看內(nèi)容,再看幾個實例就應該會用了,不推薦看亂七八糟的教程和MOOC(效果非常差,講的跨度太大),推薦書籍《精通Python網(wǎng)絡爬蟲 核心技術、框架與項目實戰(zhàn) 》(韋瑋)。同樣是選擇性的閱讀。 ?
學習完成之后,多加實踐,推薦實戰(zhàn)項目:1、爬取漫畫網(wǎng)上的一部漫畫的所有圖片,并用PowerPoint做成PDF 2、爬取電影下載網(wǎng)站上的所有電影下載鏈接并整理到Excel。能獨立完成這兩個實戰(zhàn)項目,恭喜你已經(jīng)成功入門! ?
常見的函數(shù)應用
交換變量 ?
x = 6
y = 5
x, y = y, x
print x
>>> 5
print y
>>> 6 ?
if 語句在行內(nèi)
print "Hello" if True else "World"
>>> Hello ?
連接
下面的*一種方式在綁定兩個不同類型的對象時顯得很cool。 ?
nfc = ["Packers", "49ers"] ?
afc = ["Ravens", "Patriots"] ?
print nfc + afc ?
>>> ['Packers', '49ers', 'Ravens', 'Patriots'] ?
print str(1) + " world"
>>> 1 world
print `1` + " world"
>>> 1 world
print 1, "world"
>>> 1 world
print nfc, 1
>>> ['Packers', '49ers'] 1
數(shù)字技巧
#除后向下取整
print 5.0//2
>>> 2
# 2的5次方
print 2**5
>> 32
注意浮點數(shù)的除法
print .3/.1
>>> 2.9999999999999996
print .3//.1
>>> 2.0 ?
數(shù)值比較 ?
這是我見過諸多語言中很少有的如此棒的簡便法 ?
x = 2
if 3 > x > 1:
print x
>>> 2
if 1 < x > 0:
print x
>>> 2
5 ?
同時迭代兩個列表 ?
nfc = ["Packers", "49ers"] ?
afc = ["Ravens", "Patriots"]
?
for teama, teamb in zip(nfc, afc): ?
print teama + " vs. " + teamb ?
>>> Packers vs. Ravens ?
>>> 49ers vs. Patriots ?
可視化畫布的設計和制作
打開已創(chuàng)建python項目的eclipse工具,新建python文件,并定義一個窗口 ?
定義一個拖動按鈕,初始化按鈕文本內(nèi)容,添加一個事件 ?
再聲明一個canvas畫布,背景色為綠色,寬度和高度都為200 ?
分別定義四個坐標變量a1、a2、b1和b2,使用create_line繪制直線 ?
設置完畢之后,運行這個文件,然后查看畫布展示的效果 ?
修改canvas的背景色,保存文件再次預覽查看效果,背景色發(fā)生了改變