-
自學(xué)Python教程【第五十節(jié)】元組
同學(xué)們!歡迎大家來(lái)到自學(xué)Python教程教室,上一講我們學(xué)習(xí)了and-or的小技巧,在使用這個(gè)技巧時(shí)我們要保證的是a值非假值,這個(gè)是重點(diǎn),自己多練習(xí)你就會(huì)明白了。這一講我們學(xué)習(xí)Python中元組的相關(guān)知識(shí)。 上一次pygame的課中有這樣一行代碼: x, y = pygame.mouse.get_pos() 這個(gè)函數(shù)返回的其實(shí)是一個(gè)“元組”,今天我們來(lái)講講這個(gè)東西。 元組(tuple)也是一種序列,和我們用了很多次的list類似,只是元組中的元素在創(chuàng)建之后就不能被修改。 如: postion =…
-
自學(xué)Python教程【第四十九節(jié)】and-or技巧
歡迎大家來(lái)到自學(xué)Python教室,前面我們學(xué)習(xí)了Python面向?qū)ο蟮南嚓P(guān)內(nèi)容,對(duì)于面向過(guò)程和面向?qū)ο蟠蠹疫€是要多進(jìn)行對(duì)比分析,了解面向?qū)ο蟮姆椒ǖ膬?yōu)勢(shì),并在實(shí)戰(zhàn)中多進(jìn)行應(yīng)用!今天我們介紹一個(gè)Python中的小技巧:and-or,了解一下吧: 看下面這段代碼: a = "heaven" b = "hell" c = True and a or b print c d = False and a or b print d 輸出: heaven hell 結(jié)果很奇怪是不是? 表達(dá)式從左往右運(yùn)算,1和…
-
自學(xué)Python教程【第四十八節(jié)】面向?qū)ο螅?)
歡迎大家來(lái)到Python自學(xué)教室,上一講我們用了兩道數(shù)學(xué)題為大家展示了面向?qū)ο蠛兔嫦蜻^(guò)程的不同,但是可能還有同學(xué)沒(méi)有看出面向?qū)ο蟮膬?yōu)勢(shì),或者說(shuō)覺(jué)得Python面向?qū)ο蟮膬?yōu)勢(shì)并不明顯,那是因?yàn)槲覀儸F(xiàn)在接觸的程序還不夠復(fù)雜,等以后你寫的程序越來(lái)越大,就能體會(huì)到這其中的差別了。今天我們就來(lái)舉一個(gè)稍稍再?gòu)?fù)雜一點(diǎn)的例子。 仍然是從A地到B地,這次除了有汽車,我們還有了一輛自行車! 自行車和汽車有著相同的屬性:速度(speed)。還有一個(gè)相同的方法(drive),來(lái)輸出行駛/騎行一段距離所花的時(shí)間。但這次我…
-
自學(xué)Python教程【第四十七節(jié)】面向?qū)ο螅?)
歡迎大家來(lái)到自學(xué)Python編程教室,今天為大家分享第四十七節(jié)自學(xué)Pyhon教程,也就是我們面向?qū)ο髮W(xué)習(xí)的第三節(jié)課,面向?qū)ο蟛⒉缓美斫猓且驗(yàn)榇蠹伊?xí)慣了面向過(guò)程,所以在這節(jié)課中我們將面向?qū)ο蠛兔嫦蜻^(guò)程做一個(gè)對(duì)比,以便大家更好地理解。 在剛開(kāi)始編程的時(shí)候,從上到下一行行執(zhí)行的簡(jiǎn)單程序容易被理解,即使加上if、while、for之類的語(yǔ)句以及函數(shù)調(diào)用,也還是不算困難。有了面向?qū)ο笾螅绦虻膱?zhí)行路徑就變得復(fù)雜,很容易讓人混亂。不過(guò)當(dāng)你熟悉之后會(huì)發(fā)現(xiàn),面向?qū)ο笫潜让嫦蜻^(guò)程更合理的程序設(shè)計(jì)方式。 今天我…
-
自學(xué)Python編程【第四十六節(jié)】 面向?qū)ο螅?)
同學(xué)們!歡迎大家來(lái)到馬哥自學(xué)Python培訓(xùn)班,昨天介紹了面向?qū)ο蟮母拍睿裉煳覀儊?lái)創(chuàng)建一個(gè)類。 class MyClass: pass mc = MyClass() print mc 關(guān)鍵字class加上類名用來(lái)創(chuàng)建一個(gè)類。之后縮進(jìn)的代碼塊是這個(gè)類的內(nèi)部。在這里,我們用pass語(yǔ)句,表示一個(gè)空的代碼塊。 類名加圓括號(hào)()的形式可以創(chuàng)建一個(gè)類的實(shí)例,也就是被稱作對(duì)象的東西。我們把這個(gè)對(duì)象賦值給變量mc。于是,mc現(xiàn)在就是一個(gè)MyClass類的對(duì)象。 看一下輸出結(jié)果: <__main__.M…
-
自學(xué)Python編程【第四十四節(jié)】查天氣(4)
同學(xué)們!歡迎大家來(lái)到馬哥自學(xué)Python編程教室,在上一講我們已經(jīng)可以查天氣了,但是是不是有人對(duì)城市代碼的查詢還感到不滿意呢?今天我們就這里的內(nèi)容再跟大家深入講解一下,了解一下城市代碼的抓取過(guò)程,也會(huì)讓你對(duì)網(wǎng)頁(yè)抓取有更深的理解哦。 天氣網(wǎng)的城市代碼信息結(jié)構(gòu)比較復(fù)雜,所有代碼按層級(jí)放在了很多xml為后綴的文件中。而這些所謂的“xml”文件又不符合xml的格式規(guī)范,導(dǎo)致在瀏覽器中無(wú)法顯示,給我們的抓取又多加了一點(diǎn)難度。 首先,抓取省份的列表: url1 = 'http://m.weather.com…
-
自學(xué)Python編程【第四十三節(jié)】查天氣(3)
歡迎您來(lái)到馬哥Python編程自學(xué)教室,在前兩節(jié)課我們談到了查天氣的難點(diǎn),也跟大家說(shuō)了解決辦法,并且也給大家開(kāi)了個(gè)頭,不知道大家有沒(méi)有完成剩下的查詢過(guò)程呢?沒(méi)有的話,我們一起來(lái)學(xué)習(xí)一下,完成了的話,我們一起對(duì)照一下吧: 看一下我們已經(jīng)拿到的json格式的天氣數(shù)據(jù): { "weatherinfo": { "city": "南京", "cityid": "101190101", "temp1": "37℃", "temp2": "28℃", "weather": "多云", "img1": "d1.…
-
自學(xué)Python編程【第四十二節(jié)】查天氣(2)
同學(xué)們!歡迎您來(lái)到Python編程教室,上節(jié)課我們對(duì)查天氣中的難點(diǎn)提前跟大家說(shuō)了一下, 比如城市代碼的獲取,今天我們就要開(kāi)始編程獲取數(shù)據(jù)了,想想是不還有點(diǎn)小激動(dòng)呢?快來(lái)看看吧: 先來(lái)看Python中的urllib2,這是Python中一個(gè)用來(lái)獲取網(wǎng)絡(luò)資源的模塊。我們平常上網(wǎng),在瀏覽器地址欄中輸入一個(gè)網(wǎng)址,瀏覽器根據(jù)這個(gè)網(wǎng)址拿到一些內(nèi)容,然后展現(xiàn)在頁(yè)面上,這大約就是瀏覽網(wǎng)頁(yè)的過(guò)程。類似的,urllib2會(huì)跟據(jù)你提供的網(wǎng)址,請(qǐng)求對(duì)應(yīng)的內(nèi)容。 打開(kāi)一個(gè)鏈接和打開(kāi)一個(gè)文件有點(diǎn)像: import urll…
-
自學(xué)Python編程【第四十一節(jié)】查天氣(1)
歡迎你來(lái)到馬哥自學(xué)Python編程第四十一節(jié),我們今天也是開(kāi)始一個(gè)新的內(nèi)容——查天氣,當(dāng)然今天不是直接告訴你怎么查天氣,而是跟你簡(jiǎn)單說(shuō)說(shuō),天氣怎么查詢,然后大家試著自己是否可以完成這個(gè)代碼,挑戰(zhàn)一下吧: 給大家看一個(gè)程序: 你輸入一個(gè)城市的名稱,就會(huì)告訴你這個(gè)城市現(xiàn)在的天氣情況。接下來(lái)的幾節(jié)課,我就說(shuō)一下怎么實(shí)現(xiàn)這樣一個(gè)小程序。 之所以能知道一個(gè)城市的天氣,是因?yàn)橛昧酥袊?guó)天氣網(wǎng)(www.weather.com.cn)提供的天氣查詢接口。在瀏覽器里試著訪問(wèn)一下: http://www.weathe…
-
自學(xué)Python教程【第四十節(jié)】函數(shù)的默認(rèn)參數(shù)
歡迎你來(lái)到馬哥自學(xué)Python編程教室,上一講我們結(jié)束了用文件保存游戲的Python內(nèi)容,這一講我們來(lái)補(bǔ)充一個(gè)小技巧,關(guān)于設(shè)置函數(shù)默認(rèn)參數(shù)的哦! 之前我們用過(guò)函數(shù),比如: def hello(name): print 'hello ' + name 然后我們?nèi)フ{(diào)用這個(gè)函數(shù): hello('world') 程序就會(huì)輸出 hello world 如果很多時(shí)候,我們都是用world來(lái)調(diào)用這個(gè)函數(shù),少數(shù)情況才會(huì)去改參數(shù)。那么,我們就可以給這個(gè)函數(shù)一個(gè)默認(rèn)參數(shù): def hello(name = 'wor…