Python是一種解釋型、面向?qū)ο?、?dòng)態(tài)數(shù)據(jù)類型的高級(jí)程序設(shè)計(jì)語言。作為今年來越來越流行的語言,我們?cè)撊绾螌W(xué)習(xí)或者轉(zhuǎn)行學(xué)習(xí)Python呢,這里小跡為大家介紹如何入門學(xué)習(xí)Python。以下是小編為你整理的python新手練習(xí)教程 ?
如何選擇教材,好的開始是成功的一半,選擇一本優(yōu)秀的教材是事半功倍的關(guān)鍵因素。因此我們需要去百度或者知乎等平臺(tái)看看大家是如何選購學(xué)習(xí)教材的,尋找最合適自己的學(xué)習(xí)資料; ?
書本的選購?fù)瓿珊?,我們需要查看是否有配套的視頻教程,可以通過百度或者去某些平臺(tái)購買實(shí)時(shí)授課,這樣在學(xué)習(xí)過程中遇到的問題就可以得以解答;
?
書和視頻已搞定,那就是環(huán)境配置了,PC平臺(tái)的環(huán)境配置以及庫的安裝,對(duì)于能否成功運(yùn)行Python文件,有著關(guān)鍵的作用。不懂事要學(xué)會(huì)自己百度搜索相關(guān)的資源,一般你遇到的問題許多人也遇到過; ?
學(xué)習(xí)過程結(jié)束后,我們需要自己動(dòng)手做些事情,比如寫一些界面程序,學(xué)學(xué)機(jī)器學(xué)習(xí),訓(xùn)練一下神經(jīng)網(wǎng)絡(luò)等,從中我們會(huì)發(fā)現(xiàn)我們的許多不足與不懂的地方,通過請(qǐng)教他人,或者加入一些論壇進(jìn)行學(xué)習(xí),參考他人的代碼等,這都是很重要的,一定要學(xué)會(huì)站在巨人的肩膀上思考問題; ?
*,還有非常非常重要的一點(diǎn)就是代碼風(fēng)格,從最開始學(xué)習(xí)就必須強(qiáng)迫自己模仿*秀的代碼風(fēng)格。學(xué)會(huì)標(biāo)注而不是一味地復(fù)制,在編程時(shí)懂得思考,同樣的問題可以有數(shù)十種解法,因此,懂得思考很重要。 ?
for循環(huán)判斷的格式
for循環(huán)判斷的格式為: ?
for i in range(100): print i, ?
我們開始加上判斷條件輸出50到70之間的數(shù) ?
for i in range(100): if i >49 and i <71: print i, ?
當(dāng)然可以以此類推,比如輸出 1-100 內(nèi),除開50-70的數(shù),說明一下在range后面的括號(hào)內(nèi),前面可以自定義起始值 ?
#求1-100 內(nèi)的所有奇數(shù)for i in range(1,100): if i % 2 == 1: print i, ?
我們?cè)?到100內(nèi)循環(huán)查找,如果i無法被2整除就是奇數(shù)(視頻中這里寫錯(cuò)了寫成了質(zhì)數(shù),表示抱歉) ?
新增一個(gè)知識(shí)點(diǎn)獲取隨機(jī)數(shù),我們可以通過導(dǎo)入的方式獲取一個(gè)隨機(jī)數(shù) ?
import randoma = random.randint(1,200)b = random.randint(1,999)print a,b ?
常用的變量
class Student(object): def __init__(self, name, score): self.name = name self.score =score def Print_score(self): print ('%s:%s' % (self.name, self.score))bat = Student('hongbin', 100)bat.Print_score()print bat.name ?
我們可以觀察一下在Class內(nèi)部,可以有屬性和方法,而外部代碼可以通過直接調(diào)用實(shí)例變量的方法來操作數(shù)據(jù),這樣,就隱藏了內(nèi)部的復(fù)雜邏輯。但是,從前面Student類的定義來看,外部代碼還是可以自由地修改一個(gè)實(shí)例的name、score屬性:小編可是好不容易才“考了”100分 就這樣被修改成了59,會(huì)不會(huì)很不爽!
?
在Python中,實(shí)例的變量名如果以__開頭,就變成了一個(gè)私有變量(private),只有內(nèi)部可以訪問,外部不能訪問。如果要讓內(nèi)部屬性不被外部訪問,可以把屬性的名稱前加上兩個(gè)下劃線__,我們可以測(cè)試一下: ?
這樣就確保了外部代碼不能隨意修改對(duì)象內(nèi)部的狀態(tài),這樣通過訪問限制的保護(hù),代碼更加健壯。 ?
Python中配置安裝easy_install和pip
setuptools安裝1、Python的環(huán)境變量配置好:系統(tǒng)屬性-->高級(jí)-->環(huán)境變量-->系統(tǒng)變量中path中加入python的安裝路徑Python的庫路徑環(huán)境變量配置好:系統(tǒng)屬性-->高級(jí)-->環(huán)境變量-->系統(tǒng)變量中path中加入pythonScripts路徑2、下載setuptools,https://pypi.python.org/pypi/setuptools#files,解壓到setuptools目錄3、運(yùn)行cmd,切換到setuptools目錄,輸入python setup.py install4、運(yùn)行cmd,任意目錄可輸入:easy_install --showhelp,顯示內(nèi)容則說明easy_install安裝成功pip安裝1、下載pip,解壓到pip目錄2、運(yùn)行cmd,切換到pip解壓目錄,python setup.py install3、運(yùn)行cmd,任意目錄可輸入:pip help,顯示內(nèi)容則說明pip安裝成功 ?
NumPy系統(tǒng)是Python的一種開源的數(shù)字?jǐn)U展。這種工具可用來存儲(chǔ)和處理大型矩陣。NumPy的功能:1、一個(gè)強(qiáng)大的N維數(shù)組對(duì)象Array;2、比較成熟的(廣播)函數(shù)庫;3、用于整合C/C++和Fortran代碼的工具包;4、實(shí)用的線性代數(shù)、傅里葉變換和隨機(jī)數(shù)生成函數(shù)。NumPy下載地址:http://sourceforge.net/projects/numpy/files/ ?
SciPy是一個(gè)開源的Python算法庫和數(shù)學(xué)工具包。SciPy包含的模塊有*化、線性代數(shù)、積分、插值、特殊函數(shù)、快速傅里葉變換、信號(hào)處理和圖像處理、常微分方程求解和其他科學(xué)與工程中常用的計(jì)算。與其功能相類似的軟件還有MATLAB、GNU Octav和Scilab。 ?
Matplotlib是Python的圖形框架,類似MATLAB和R。繪圖領(lǐng)域使用最廣泛的套件。它能讓使用者很輕松地將數(shù)據(jù)圖形化,并且提供多樣化的輸出格式。 ?
SymPy是Python的數(shù)學(xué)符號(hào)計(jì)算庫,用它可以進(jìn)行數(shù)學(xué)公式的符號(hào)推導(dǎo),其功能包括基本的算術(shù),基本簡(jiǎn)化,一系列擴(kuò)大,功能(exp, ln, sin, cos, tan, 等),分化,整合(目前只能做很簡(jiǎn)單的積分),基本替代,任意精度的整數(shù)和有理數(shù),標(biāo)準(zhǔn)(Python)的浮點(diǎn),基本復(fù)雜的數(shù)字和符號(hào)的限制。Sympy安裝地址: https://github.com/sympy/sympy/releasesSympy安裝:使用官網(wǎng)exe ?
Scikit-Learn是基于python的機(jī)器學(xué)習(xí)模塊,基于BSD開源許可證。Scikit-Learn的安裝需要numpy,scipy,matplotlib等模塊。Scikit-Learn中的機(jī)器學(xué)習(xí)模型非常豐富,包括SVM,決策樹,GBDT,KNN等等。scikit-learn的基本功能主要被分為六個(gè)部分,分類,回歸,聚類,數(shù)據(jù)降維,模型選擇,數(shù)據(jù)預(yù)處理。對(duì)于具體的機(jī)器學(xué)習(xí)問題,通常可以分為三個(gè)步驟,數(shù)據(jù)準(zhǔn)備與預(yù)處理,模型選擇與訓(xùn)練,模型驗(yàn)證與參數(shù)調(diào)優(yōu)。