Python基礎(chǔ)入門課程-學(xué)習(xí)筆記_第1頁(yè)
Python基礎(chǔ)入門課程-學(xué)習(xí)筆記_第2頁(yè)
Python基礎(chǔ)入門課程-學(xué)習(xí)筆記_第3頁(yè)
Python基礎(chǔ)入門課程-學(xué)習(xí)筆記_第4頁(yè)
Python基礎(chǔ)入門課程-學(xué)習(xí)筆記_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Sell AudioMicrosoft Office, 遺回Python根底入門課程-學(xué)習(xí)筆記近期突然有點(diǎn)迷上了爬蟲Python,可能原因是最近人工智能,深度學(xué)習(xí)炒的比擬熱火有關(guān).所以在網(wǎng)上搜了一大圈,想找點(diǎn)根底教程看看,發(fā)現(xiàn)還真不少, 不過(guò)還真沒有發(fā)現(xiàn)比擬適合我這種菜鳥的教程,要么是英文的,要么一開始就講的比擬深,連測(cè)試環(huán)境都搭建不起了.讓人一看就有點(diǎn)畏難放充了.最后終于發(fā)現(xiàn)了唐老師的視頻教程,好了,廢話不多說(shuō),我就把我最近一段時(shí)間的學(xué)習(xí)筆記給大家分享一下.要想學(xué)習(xí)Python,首先要搭建測(cè)試環(huán)境.本教程所用的環(huán)境如下: 一、測(cè)試環(huán)境:系統(tǒng):64位win7中文版瀏覽器:Google Chro

2、me ,盡量不要用IE瀏覽器,測(cè)試中可能不能使用.Python : Anaconda3-431-Windows-x86_64.exePython可以自行通過(guò) Baidu自行搜索下載安裝即可. 二、Python 安裝:如果你能下載到上面的版本,直接雙擊運(yùn)行安裝即可,可以更改安裝路徑到D盤,由于占用空間比擬大.我就是安裝到D盤.安裝完成后你就可以在開始菜單-所有程序-Anaconda3找到Jupyter Notebook .本次教程所有腳本全部在該 notebook中運(yùn)行和測(cè)試.AnacondaS (64*bit)J Anaconda CloudAnaconda Navigator Anacond

3、a Prompt IP I Python 二 Jupyter Notebook < lupyler QTConsole Reset Spyder Settings三、入門學(xué)習(xí):如果你順利看到這里,并能在你的電腦上看到上面的截圖,那么恭喜你,你 已經(jīng)成功的擁有了本次學(xué)習(xí)測(cè)試的環(huán)境.1、翻開 Jupyter notebook .路徑:開始菜單-所有程序-Anaconda3找到Jupyter Notebook單擊翻開, 界面如下.如能翻開 Dos窗口,不能出現(xiàn)下面的截圖,請(qǐng)嘗試安裝 GoogleChrome ,并設(shè)置成默認(rèn)瀏覽器即可解決.單擊上圖中的 New,從下來(lái)菜單中選擇 Python 3

4、即可翻開代碼編輯窗口 如下兩圖:Upload 卜佛 0d F 3Kyincr > localhost -H - - not-l.廣八 mtitlFT;id1 -rn+l jtmtir二th.門力jupyter Untitled3 Last Checkpoint a fe n seconds ago (unsaved changes)a tH C好了,終于可以看到Python的一些真面目了,下面我們就和他來(lái)一個(gè)親民接觸吧.還是從最經(jīng)典的 “ Hello Word ! 入手,讓我們看看如何通過(guò) Python輸出“Hello Word ! .在代碼輸入處輸入以下代碼:print ( "

5、;Hello, Word!)然后按Control+enter 鍵運(yùn)行即可看到屏幕上輸出Hello Word !是不是有點(diǎn)成就感了.好,我們繼續(xù).2、變量python是一種動(dòng)態(tài)類型語(yǔ)言,在賦值的執(zhí)行中可以綁定不同類型的值, 這個(gè)過(guò)程叫做 變量賦值操作,賦值同時(shí)確定了變量類型.在python中變量定義方法很簡(jiǎn)單:a = 3這個(gè)操作過(guò)程就是賦值,意思把整型數(shù)字 5賦值給了變量 a,用等號(hào)來(lái)連接變量名和值.之后就可以在表達(dá)式中使用這個(gè)新變量了A * 5的結(jié)果就是15,如以下圖所示.I In 3 : a = 3Ia 5I Out 3: 15Say_Hello = "你好,很快樂見到你這個(gè)賦值語(yǔ)

6、句就把“你好,很高 興見到你賦值給 Say_hello變量,并且定義了SayHello的變量類型為字符型(String )如以下圖,type()函數(shù)可以顯示變量類型In:SayJUo=“你好,很快樂見到你!Iprint (Say_Hello)pr i ritHello)'£ 一 你好,很快樂見到你!I氟$ ' str*)如果一個(gè)變量有多個(gè)單詞組成,建議使用下畫短線連接,如Say_Hello變量.怎么定義一個(gè)浮點(diǎn)類型的變量啊,和上面一樣我們直接給他一個(gè)浮點(diǎn)類型的數(shù)字即可:float_v = 3.05,好,我們看看如何判斷一個(gè)變量的類型,這就是上面我們提到的type()函

7、數(shù)如以下圖:I In 11 : String_v = 工中國(guó)Int_v = 123 f loat_v - 3,05Iprint (type (Strinc_v)Ipxint (typeIpxint (type(£loat_v)I<elass* str> >I9 inV >I<cla5$ 'float' ?<class 'str ' >就是說(shuō)類型為字符類型,同樣的 <class 'int ' >是整 形變量,<class 'float ' >為浮點(diǎn)類型3、類

8、型轉(zhuǎn)換如以下語(yǔ)句:str_666 = "666"定義一個(gè)字符類型的666print (type(str_666)顯示變量類型:str 型print (str_666)顯示變量?jī)?nèi)容int_666 = int(str_666)定義一個(gè)整型類型的數(shù)值變量,并通過(guò) int()把字符類型的666轉(zhuǎn)換成數(shù)值類型 666print (type(int_666)顯示變量類型:Int 型print (int_666)顯示變量?jī)?nèi)容運(yùn)行結(jié)果如以下圖所示15 : str_666 = *666*print (typ二(str_666) print (sti_666)int_6o5 = mt (stx

9、_66j print type(工nt 666) print (int_666)Kclass * sti> >666<cla5s ' mt, >666關(guān)于變量類型轉(zhuǎn)換需要滿足一些條件才可進(jìn)行,否那么那么會(huì)報(bào)錯(cuò).一般會(huì) 將字符類型的數(shù)值轉(zhuǎn)換為整型和浮點(diǎn)型.4、運(yùn)算符號(hào)在Python中也和其他的編程語(yǔ)言一樣,有運(yùn)算符號(hào),力口: +;減:-;乘:*;除:/ ;乘方:*看下面的例子:a = 10b = 5print (a+b) # 輸出a+b的結(jié)果為 10 print(a-b) #輸出a-b的結(jié)果為5print(a*b) #輸出a*b的結(jié)果為50print(a/b) #

10、輸出a/b的結(jié)果為2print(a*b) # 輸出a*b的結(jié)果為 100000也就是10的5次方.實(shí)際上Python的運(yùn)算和其他語(yǔ)言一樣,很簡(jiǎn)單,對(duì)吧!I In 16: a = 10 b = 6Ipxint (i*b)Iprint(a-b)print(a+b) print(i/b)Iprint a+bI15 5 50I2.0I100000I5、List 變量除了上面講的字符型str、整理int、浮點(diǎn)型float類型變量之外,python還有一個(gè)重量級(jí)變量類型 list變量,也是非常好用.使用方法和其他變 量一樣.Numbers = #定義一個(gè)空的 list 變量 numbers.Numbers

11、.append (1)# 向 numbers 變量中添加值Numbers.append (2) # 向 numbers 變量中添加值Numbers.append (3) # 向 numbers 變量中添加值print (Numbers) # 輸出 numbersprint (Numbers0) # 輸出 numbersI In 20: Nuiribftrs = 4/'SCt變量m-色上工INunber s . append (1)事向mimb ers道方 中航如'值 Numbers. append (2)才同1?口門"T土交言中滑任渣 Nuinber s. appen

12、d (3) /網(wǎng)numb"導(dǎo)變量中添郵通Ipxxut (JTwibex?) #軸出ngbe工5print (Numbers 0)二裝出nsbea中的笨一不適1, 2, 31 1注意:list變量的索引是從零開始的,如上例中取出第一個(gè)值使用的是nmbers0.如果我們要定義一個(gè)這樣的list變量,看看該怎么做.某學(xué)生的各科學(xué)習(xí)成績(jī).Scores= # 定義一個(gè)空的list 變量 Scores.append(" 語(yǔ)文")#添加字符類型的值 Scores.append(90)#添加數(shù)值型的值Scores.append("數(shù)學(xué)")Scores.appe

13、nd(98) Scores.append("英語(yǔ)") Scores.append(88)In 32 : Scores* 0金義一小空的last變量 Scores, app日語(yǔ)文*) *密如字符類型的值 Scores* append(90).二二,三:二一 二IScores, wp.口d(豹羊)IScores, append 98)|IScores. append(“英諳')IScarefi-append(88)print (Scores) 語(yǔ)文二90,'數(shù)學(xué)"98,'英語(yǔ)1 88如果我們要輸出該學(xué)生的數(shù)學(xué)成績(jī)?cè)趺崔k? print (Scor

14、es2:4)#輸出該生的數(shù)學(xué)成績(jī)I In 37: Scores=札右乂一小至的上2s t受蠶IScor .S append,語(yǔ)文.)瘋T學(xué)賣我優(yōu)依?ScorSi Append 19'j;:= 一爐.以IScores, append(數(shù)學(xué) JIScores, append(98)Scores, append央店)IScoroff.卻pend(88)Iprint (Scores)print (Scores2:4)< ¥*比I玄也的志學(xué)成統(tǒng) r語(yǔ)文' so,數(shù)學(xué)',g% "英語(yǔ)、88 r數(shù)學(xué)) 38)這兒要注意以下,如果使用list 的索引index

15、來(lái)獲取值時(shí),從一個(gè) index取到另一個(gè)index的區(qū)間的值時(shí),規(guī)那么是包含第一個(gè)index的值,不包含最后一個(gè)index的值,叫做“取頭不取尾.如上例中的 Scores2:4,實(shí)際輸出為:第二和第三兩個(gè)值,并沒有輸出第四個(gè)值.還有一個(gè)問題,如果我要取一個(gè)list的最后一位值,怎么取呢??jī)煞N方法:由于list的index有兩個(gè),一個(gè)是正向的0,1,2,3 ,另一個(gè)是反向的-1,-2,-3 , -4,因此我們可以使用-1這個(gè)index獲取一個(gè)list的最后一個(gè)值.print(Scores-1)# 輸出 Scores 的最后一位值另外一種方法為使用 len ()函數(shù),大家如果使用過(guò)其他的編程語(yǔ)言或

16、excel函數(shù),都應(yīng)該知道這個(gè)函數(shù)是回去長(zhǎng)度的函數(shù).在 python中我們也有l(wèi)en()函 數(shù).index = len(Scores) - 1 # 獲取 Scores 的最大索弓 Iprint (Scoresindex)# 輸出 Scores 的最后一位值怎樣獲取一個(gè)list中從第二個(gè)值開始后所有的值呢?In L46J : 5cores= LJ ¥近X7 上ffWt二_宜IScores, append語(yǔ)文')*褸*字符類型的建Scores, append(90)堂的口Scores.append 平,)IScores, append(98)IScores, append(.英語(yǔ)

17、.)IScores, append(88)Iindex = lenCScoxes)- 1 4獲取Scwr的羲Iprint (Scores index) 總由s的袋后一Ipint (Scores -1 ) *輸出Ssg.s的最后一拉徵Iprint (Scores1:)3輸出Scaes的地二位到AQiCJprint (Scores1:)# 輸出Scores的地二位到最后一位值 回?cái)?shù)爭(zhēng),況英語(yǔ)"886、循環(huán)結(jié)構(gòu)首先我們看一下for循環(huán)變量變量運(yùn)行For變量in循環(huán)體:表達(dá)式我們先看一個(gè)例子:scores =' 語(yǔ)文',90,' 數(shù)學(xué)',98,'英語(yǔ)&

18、#39;,88# 定義一個(gè) list#我們要列出該list中的所有的值for score in scores:#注意冒號(hào)print(score)#注意前面的空格,4個(gè)空格或一個(gè) Tab鍵程序運(yùn)行結(jié)果如下:fox score in ycoxes:Iprint(score)I 語(yǔ)文-A數(shù)學(xué)I98英語(yǔ)I88例子:scores =' 語(yǔ)文',90,' 數(shù)學(xué)',98,' 英語(yǔ)',88# 定義一個(gè) list#我們要列出該list中的所有的值for score in scores:print(score)print('abc')#這個(gè)語(yǔ)句和上面

19、的語(yǔ)句執(zhí)行一樣的次數(shù)print('123')#這個(gè)只執(zhí)行一次這個(gè)例子說(shuō)明python中的循環(huán)結(jié)構(gòu)是靠前面的空格來(lái)進(jìn)行限制的.結(jié)果如下:scores "幸文, 90, 檢學(xué)*,英語(yǔ)"88 1 1 / uJ t : . 口 , fltT1* yBfor score Ln scores:print (score)Dir mt (' she')/flprint.12: )立這個(gè)J?我療一列衿十a(chǎn)bc 90 abc 數(shù)學(xué) abc 93 abc 英語(yǔ) 3b c 88 abc123I In 5LJ; for i in iange(8):Iprint Ii|

20、IoI1I2I34I567While循環(huán)While變量 判斷表達(dá)式:表達(dá)式看下面的例子:tfhile 1 < 5 x = i+l下面我們?cè)賮?lái)看一個(gè)稍微復(fù)雜一點(diǎn)的循環(huán)結(jié)構(gòu).scores=' 語(yǔ)文',90,' 數(shù)學(xué)',98,' 英語(yǔ)',88# 定義一個(gè) list,注意該list的值也是一個(gè)listfor score in scores:# 使用 for 循環(huán)遍歷該 listprint (score)熙,90,'數(shù)學(xué) l 96,'英語(yǔ)) 88 for score in scores:rint scoreJ /文學(xué)語(yǔ) 語(yǔ)都英 , 事

21、如何得到下面的結(jié)果輸出呢?語(yǔ)文90數(shù)學(xué)98英語(yǔ)88scores=' 語(yǔ)文',90,' 數(shù)學(xué)',98,' 英語(yǔ)',88# 定義一個(gè) list, 注意該list的值也是一個(gè)listfor score in scores:# 使用 for 循環(huán)遍歷該 scores listfor i in score:# 在使用 for 遍歷 score listprint (i)I In 中;90. 98, 英年'fi>< ffcoxo in 3coios«,3黨環(huán)晨乃占secies 2istfoi L ir* =01: 987、判斷結(jié)

22、構(gòu)要說(shuō)判斷結(jié)構(gòu),首先要知道一個(gè)變量類型:布爾類型,這個(gè)更簡(jiǎn)單,只有兩個(gè)值:true和false我們看一下下面的例子:a = True # 定義a為布爾型的變量,注意后面的 True首字母要大寫b = False # 定義b為布爾型的變量,注意后面的False首字母要大寫print (type(a) # 輸出 a 的類型print (a) #輸出a的值print (type(b) # 輸出 b 的類型print (b) #輸出b的值代碼運(yùn)行結(jié)果如下:class bool TiueKclass bo./ False再看一下下面的例子:print ('i' = 'i'

23、)# print ('i' = 'j')# print ('i' != 'i')# print ('i' != 'j')#輸出i等于i的結(jié)果 輸出i等于j的結(jié)果 輸出i不等于i的結(jié)果 輸出i不等于j的結(jié)果代碼運(yùn)行結(jié)果如下:和你判斷的一致嗎?這個(gè)地方=表示判斷兩個(gè)值是否一樣,表示不等于print printITrueIFalseIFalseITrue好,下面我們看一下判斷結(jié)構(gòu)if , else ,If判斷表達(dá)式:#表達(dá)式的值為True時(shí)執(zhí)行“執(zhí)行語(yǔ)句1 執(zhí)行語(yǔ)句1Else: #表達(dá)式白值為 False

24、時(shí)執(zhí)行“執(zhí)行語(yǔ)句 2 執(zhí)行語(yǔ)句2例子:我們要判斷一個(gè)學(xué)生的成績(jī)是否大于90分,大于90,在屏幕上輸出“優(yōu)秀,否那么在屏幕上輸出“革命尚未成功,同志仍需努力!score = 95 if score > 90: print "優(yōu)秀"else: print"革命尚未成功,同志仍需努力!"I In 9: score = 95Iif score > 90:你可以嘗試把 95改成小于90的數(shù)試一下,看看輸出結(jié)果是不是你想要的?我們?cè)倏匆幌孪旅娴睦樱篿f 1:# 在python中除0以外所有的數(shù)值都表示True.print"True"

25、else:print("False")True使用for循環(huán)和if判斷查找list中的某個(gè)值numbers = 1,2,3,4,5,6,7,8,9for number in numbers:if number = 8:print "8被找到了!"else:print" 沒有找到"I In 17 : numbeis - 1, 2,3#4 5.& 7.8.gIfor nu*ber in nuAbers:Iif nunber = 8:IJ工工nt 8被找到了! "Iel se:Iprint沒有找到"沒有找到I沒有

26、找到?jīng)]有找到 沒有找到 沒有找到 沒有找到 沒有找到I瞰找到了!沒有找到僅使用if判斷來(lái)找出8numbers = 1,2,3,4,5,6,7,8,9if 8 in numbers:print "8被找到了!"else:print" 沒有找到"I In 10 : numbers = 1, 3, 4f 5, 6, 7,8,9 rf 3 in nu>bers:匕 1 二£:8被找到了 !8、子典結(jié)構(gòu) 我們先來(lái)看這樣兩個(gè)listitems =" 語(yǔ)文","數(shù)學(xué)","英語(yǔ)" scores

27、= "95","90","92"item ="語(yǔ)文"i = 0while i < lenitems:if itemsi = item: print scores.i += 1代碼運(yùn)行結(jié)果如下:匕工,-enIif items i = item;95我們也可以這樣寫:items =" 語(yǔ)文","數(shù)學(xué)","英語(yǔ)"scores = "95","90","92"item ="語(yǔ)文"

28、for i in range(0,1,2):if itemsi = item:print (scoresi)I In 35 , ileus -得,豕(學(xué),英后Iscores =95; "90: "92*Iitem = ,語(yǔ)文*for l i n 1 型ige L1 j 乙):Iif iteasl - iten:Iprint (scoresi)|Igg如果我們使用python的字典結(jié)構(gòu)來(lái)做的話就更簡(jiǎn)單了:scores = 游定義一個(gè)空的字典,是大括號(hào) key , value)Ln LJy, scores - ii 口工 人 一二+三 scores L 諂.;J - Pb營(yíng)號(hào)&

29、#165; A 丁A*1JHLJLJB fits c qx e s I號(hào)V弓 J = yy #三5與fM wscores" 語(yǔ)文為=d95# 塞室由賦而.scores片 激學(xué)=90# 給字典賦值scores"胸誨,用=92# 金字,典賦值 print (scores)#輸出便肥附兩相L字岫王茄定仁田吐print(scores"'鎏堂")#9雕愀錠:Key 惟Vfluegz是不是比上面的兩個(gè)例子簡(jiǎn)單多了? ! 下面我們?cè)倏匆粋€(gè)關(guān)于字典的例子:如何更改字典中的某個(gè)Key的Valuescores = " 數(shù)學(xué)":90,"

30、語(yǔ)文":85," 英語(yǔ)":95 # 先定義一個(gè)字典scores 語(yǔ)文? = 90 #更改語(yǔ)文的分?jǐn)?shù)為90print (scores) #打印輸出 scores 字典scores" 語(yǔ)文"=scores" 語(yǔ)文"-5 #對(duì)語(yǔ)文成績(jī)進(jìn)行計(jì)算更改print (scores) #打印輸出 scores 字典I In 2 : scores = '數(shù)學(xué)飛90. *語(yǔ)文英清4先定義一個(gè)字典I股.工自式語(yǔ)文-90 *更改語(yǔ)文的分?jǐn)?shù)為90Ipxint拿fT印輸出工二字典Iscores"語(yǔ)文 = 5cos3.語(yǔ)文, - 5 &

31、#165;科語(yǔ)文成康進(jìn)擰計(jì)算更改Ipxint (scores) *打印螭出ecohws字典I教學(xué)':90,'語(yǔ)文':90,英語(yǔ)':95I嘲學(xué)':90語(yǔ)文':85英語(yǔ)':95繼續(xù)看一個(gè)關(guān)于list和字典的例子:如何統(tǒng)計(jì)list中項(xiàng)出現(xiàn)的次數(shù), 并將其存 入字典中讓ems=apple,“grape,“apple,“orange,“apple,“tomato,“orange,“gr ape","apple"#定義一個(gè) listitem_counts = #定義一個(gè)空的字典for item in items:# 遍歷

32、 items 中的每一個(gè) itemif item in item_counts:#判斷 item 是否已經(jīng)存在于item_counts 字典item_countsitem = item_countsitem + 1#存在,那么再其 Value上+1else:item_countsitem = 1 #不存在,指定其 value 為 1print (item_counts)#打印輸出 item_countsT njpl atut . , q k _ r cmb.1 0 > ny . fixajM 鼻Jforir, .三as: /:-*( i ir if . iii jif sI J - -&

33、quot;、 、工 ,4* 一-:上itoa caLntjIitoal * cocnisl Lton.r *.elm 1 + _r ,* 111 - h 1.:I Lr f (ltO> WH卬*, J , Fi * J *.門/j. _>ji vrlft :crv< ; wvc* : 4 tflfT: ir9、文件處理文件的讀取,主要用到 open函數(shù),我們下面看一個(gè)例子如何讀取存在于d盤的一個(gè)名為123.csv的文件,當(dāng)然也可以是text文件,或者 word和excel等文件f = open("d:/123.csv","r") #以只讀的方式翻開指定路徑的文件g = f.read() # 讀取內(nèi)容 print (g) #打印輸出讀取的內(nèi)容f.close() #關(guān)閉文件月月月月月月月月月由一一二三四五六七八九,+,+Y, J , 一3 1 , , 一/ J1 2 3456789 1 11ut ? ; -function TcxtIOWfappez. clofe下面再通過(guò)open函數(shù)創(chuàng)立一個(gè)文本文件并添加一些內(nèi)容f = open(d:/test.txt","w) #翻開d盤的test 文件,如沒有那么創(chuàng)立f.write('1

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論