Python是一種功能很強(qiáng)大的語言,對于零基礎(chǔ)學(xué)習(xí)Python還是有難度的,但只要學(xué)習(xí)方法對,入門還是很快噠。下面介紹幾種學(xué)習(xí)Python的方法。以下是小編為你整理的學(xué)習(xí)python有什么用 ?
首先是書籍,通過書籍學(xué)習(xí),雖然速度會(huì)有些慢,但知識具體,可以掌握很多細(xì)節(jié),一旦入門后,后面進(jìn)步就很快了,下面介紹給大家一本書,是以前我學(xué)習(xí)Python時(shí)用的書,感覺還挺不錯(cuò)噠。
然后就是借助網(wǎng)絡(luò)學(xué)習(xí),網(wǎng)上有很多視頻課程,而且有很多是免費(fèi)噠,網(wǎng)絡(luò)視頻比較直觀,入門快。給大家推薦一個(gè)視頻,網(wǎng)易云課堂里有個(gè)零基礎(chǔ)入門學(xué)習(xí)python的視頻,是免費(fèi)的,我之前也看過,挺不錯(cuò)噠 ?
還有就是加一些qq群或是論壇,里面的知識雖然不全面,但對于知識的擴(kuò)寬還是很有幫助噠。 ?
*說說我的學(xué)習(xí)經(jīng)驗(yàn),書籍學(xué)習(xí)的方法比較扎實(shí),網(wǎng)絡(luò)視頻學(xué)習(xí)的方法入門比較快,論壇可以作為知識的補(bǔ)充渠道,當(dāng)然,如果想學(xué)精,唯有多多實(shí)踐一條途徑。 ?
優(yōu)點(diǎn)是什么
Python世界最棒的地方之一,就是大量的第三方程序包。同樣,管理這些包也非常容易。按照慣例,會(huì)在 requirements.txt 文件中列出項(xiàng)目所需要的包。每個(gè)包占一行,通常還包含版本號。這里有一個(gè)例子 ?
Python 程序包有一個(gè)缺陷是,它們默認(rèn)會(huì)進(jìn)行全局安裝。我們將要使用一個(gè)工具,使我們每個(gè)項(xiàng)目都有一個(gè)獨(dú)立的環(huán)境,這個(gè)工具叫virtualenv。我們同樣要安裝一個(gè)更高級的包管理工具,叫做pip,他可以和virtualenv配合工作。 ?
首先,我們需要安裝pip。大多數(shù)python安裝程序已經(jīng)內(nèi)置了easy_install(python默認(rèn)的包管理工具),所以我們就使用easy_install pip來安裝pip。這應(yīng)該是你*一次使用easy_install 了。如果你并沒有安裝easy_install ,在linux系統(tǒng)中,貌似從python-setuptools 包中可以獲得。 ?
如果你使用的Python版本高于等于3.3, 那么Virtualenv 已經(jīng)是標(biāo)準(zhǔn)庫的一部分了,所以沒有必要再去安裝它了。 ?
下一步,你希望安裝virtualenv和virtualenvwrapper。Virtualenv使你能夠?yàn)槊總€(gè)項(xiàng)目創(chuàng)造一個(gè)獨(dú)立的環(huán)境。尤其是當(dāng)你的不同項(xiàng)目使用不同版本的包時(shí),這一點(diǎn)特別有用。Virtualenv wrapper 提供了一些不錯(cuò)的腳本,可以讓一些事情變得容易。 ?
當(dāng)virtualenvwrapper安裝后,它會(huì)把virtualenv列為依賴包,所以會(huì)自動(dòng)安裝。 ?
打開一個(gè)新的shell,輸入mkvirtualenv test 。如果你打開另外一個(gè)shell,則你就不在這個(gè)virtualenv中了,你可以通過workon test 來啟動(dòng)。如果你的工作完成了,可以使用deactivate 來停用。 ?
循環(huán)語句的應(yīng)用
舉個(gè)例子如果我們要生產(chǎn)一個(gè)list [1,2,3,4,5,6,7,8,9,10] 我們可以使用range(1,11)來表示,如果直接寫range(11) 是從0開始,我們可以演示一下。print range(11)print range(1,11)print range(8,11) ?
然后我們想一下 如果要表示[1*1,2*2,3*3,4*4.....100*100]要怎么做呢?好肯定是要利用到循環(huán)的概念,正常的寫法是這樣的: ?
a = [] #定義一個(gè)空的列表for x in range(1,101): #假設(shè)X在從1開始循環(huán)到100 a.append(x * x) # 進(jìn)行一次添加操作 x* xprint a
?
作為一個(gè)程序員,就要是使用最短的代碼*效的完成程序表達(dá)的功能,如果使用循環(huán)寫的話會(huì)感覺比較繁瑣,特別是邏輯能力不太強(qiáng)的朋友,我們可以使用一行語句代替循環(huán),我們測試看看 ?
print [x * x for x in range(1,101)] ?
當(dāng)然除了計(jì)算之外,我們還可以做一些比較特殊的字符串操作,比如: ?
print [m + n for m in 'ABC' for n in 'XYZ'] ?
我們可以看到我們把A B C 都加了一遍XYZ 如果要用正常的循環(huán)也是可以完成的就是了,這樣的操作更加簡單便捷。 ?
?
urllib.parse
urllib.parse 庫是用來拆分和組合 URL 字符串的標(biāo)準(zhǔn)接口。比如,你可以使用它來轉(zhuǎn)換一個(gè)相對的 URL 為絕對的 URL。讓我們試試用它來轉(zhuǎn)換一個(gè)包含查詢的 URL : ?
>>> from urllib.parse import urlparse >>> result = urlparse('https://duckduckgo.com/?q=python+stubbing&t=canonical&ia=qa') >>> result ParseResult(scheme='https', netloc='duckduckgo.com', path='/', params='', query='q=python+stubbing&t=canonical&ia=qa', fragment='') >>> result.netloc 'duckduckgo.com' >>> result.geturl() 'https://duckduckgo.com/?q=python+stubbing&t=canonical&ia=qa' >>> result.port None ?
這里我們導(dǎo)入了函數(shù) urlparse , 并且把一個(gè)包含搜索查詢字串的 duckduckgo 的 URL 作為參數(shù)傳給它。我的查詢字串是搜索關(guān)于 “python stubbing” 的文章。如你所見,它返回了一個(gè) ParseResult 對象,你可以用這個(gè)對象了解更多關(guān)于 URL 的信息。舉個(gè)例子,你可以獲取到端口信息(本例中沒有端口信息)、網(wǎng)絡(luò)位置、路徑和很多其它東西。