返學(xué)費(fèi)網(wǎng) > 培訓(xùn)機(jī)構(gòu) > 少兒編程培訓(xùn)中心
近年來關(guān)注python趣味少兒編程的用戶越來越多,小編整理了關(guān)于《Python 少兒趣味編程》,《Python游戲趣味編程》 第6章 見縫插針,基于游戲趣味編程的Python教學(xué),少兒編程:python趣味編程第一課??,供您參考
Python簡(jiǎn)單易學(xué),功能強(qiáng)大,是少兒學(xué)習(xí)編程的首選語言。本書是少兒學(xué)習(xí)Python編程的趣味指南,全書共17章,按照由簡(jiǎn)到難、逐步深入的方式組織各章內(nèi)容。本書從認(rèn)識(shí)Python開始,首先介紹了Python的安裝和IDLE的使用,然后依次介紹了變量、數(shù)字和字符串、列表、元組和字典、布爾類型等數(shù)據(jù)類型,以及條件、循環(huán)、異常和注釋、函數(shù)、面向?qū)ο缶幊獭⑽募僮鞯然A(chǔ)知識(shí),并且通過實(shí)際案例講解了海龜繪圖、Pygame基礎(chǔ)和游戲編程,以及Python在自然語言處理方面的應(yīng)用。 《Python少兒趣味編程》精心選取內(nèi)容,注重難易適度和趣味性,語言通俗易懂,代碼示例豐富。在多章的末尾,還給出了一些練習(xí)題并給出了解答。本書適合想要學(xué)習(xí)Python編程基礎(chǔ)的少兒(尤其是10歲以上的孩子)及想要教孩子學(xué)習(xí)編程的家長(zhǎng)閱讀,也適合少兒編程培訓(xùn)班的老師用作少兒編程培訓(xùn)的教材。 《Python少兒趣味編程》具有以下特色:精心選取和組織內(nèi)容,注重難易適度——涵蓋基礎(chǔ)知識(shí)、趣味應(yīng)用和熱門應(yīng)用。堅(jiān)持“做中學(xué)”的理念和方法——通過詳細(xì)的示例和課后練習(xí)幫助讀者學(xué)習(xí)和掌握。體現(xiàn)趣味性——用海龜繪圖繪制機(jī)器貓、小豬佩奇等卡通角色,編寫貪吃蛇游戲,對(duì)古典名著《西游記》分詞。增強(qiáng)可拓展性——逐步擴(kuò)展和改進(jìn)的“成績(jī)單”示例程序,章末習(xí)題既鞏固知識(shí),也拓展編程技能。 《Python少兒趣味編程》帶領(lǐng)讀者編寫的趣味程序包括:幫Johnson 找到回家的路;逐步擴(kuò)展和改進(jìn)的“成績(jī)單”示例程序;用海龜繪圖繪制的機(jī)器貓;用海龜繪圖繪制小豬佩奇;編寫彈球游戲;編寫貪吃蛇游戲;對(duì)古典名著《西游記》分詞。用海龜繪圖繪制小豬佩奇編寫貪吃蛇游戲?qū)诺涿段饔斡洝贩衷~ 從異步社區(qū)《Python少兒趣味編程》的頁面,可以免費(fèi)下載示例代碼和素材,還可以觀看作者拍攝的教學(xué)視頻。作者制作了授課PPT,中小學(xué)信息技術(shù)課教師或少兒培訓(xùn)班教師,如有需要可以聯(lián)系索取。
圖書簡(jiǎn)介可以看這里:童晶:《Python游戲趣味編程》新書上架了本章我們將編寫一個(gè)見縫插針的游戲。按下空格鍵后發(fā)射一根針到圓盤上,所有發(fā)射的針跟著圓盤逆時(shí)針方向轉(zhuǎn)動(dòng);如果新發(fā)射的針碰到已有的針,游戲結(jié)束。首先我們進(jìn)行圓盤與針圖片的顯示、針的轉(zhuǎn)動(dòng)及旋轉(zhuǎn)中心的設(shè)置;其次定義列表存儲(chǔ)多根針的信息,實(shí)現(xiàn)多根針的發(fā)射、轉(zhuǎn)動(dòng)與失敗判斷;最后學(xué)習(xí)游戲信息的顯示、音效的添加。本章案例最終代碼一共49行,代碼參看:配套資源\第6章\6-8.py,視頻效果參看:配套資源\第6章\見縫插針.mp4。import pgzrun # 導(dǎo)入游戲庫 TITLE = 'Python見縫插針 --- by 童晶' # 導(dǎo)入初始位置針的圖片、設(shè)置錨點(diǎn)相對(duì)坐標(biāo) = Actor('needle', anchor=(170+50, 1)) .x = 200 # 設(shè)置針錨點(diǎn)的x坐標(biāo) .y = 300 # 設(shè)置針錨點(diǎn)的y坐標(biāo) needles = [] # 存儲(chǔ)所有針的列表,開始為空 = 1 # 旋轉(zhuǎn)速度,默認(rèn)是1,后面游戲結(jié)束后改成0 score = 0 # 游戲得分 def draw(): # 繪制模塊,每幀重復(fù)執(zhí)行 screen.fill('white') # 白色背景 .draw() # 初始位置針的繪制 for needle in needles: # 繪制列表中每根針 needle.draw() # 繪制針 screen.draw.filled_circle((400, 300), 80, 'red') # 繪制圓盤 screen.draw.text(str(score), (50, 250), fontsize=50, color='green') # 顯示游戲得分 if == 0: # 游戲失敗 screen.draw.text("Game Over!", (10, 320), fontsize=35, color='red') def update(): # 更新模塊,每幀重復(fù)操作 for needle in needles: # 對(duì)列表中每根針遍歷處理 needle.angle = needle.angle + # 針的角度增加,即慢慢旋轉(zhuǎn) def on_key_down(): # 當(dāng)按下任意鍵盤鍵時(shí)執(zhí)行 global , score if >0: # 播放音效 music.play_once('彈簧') # 再新建一根針 newNeedle = Actor('needle', anchor=(170+50, 1)) newNeedle.x = 400 # 設(shè)置針錨點(diǎn)的x坐標(biāo) newNeedle.y = 300 # 設(shè)置針錨點(diǎn)的y坐標(biāo) for needle in needles: if newNeedle.(needle): # 新針和其他針碰撞,游戲失敗 print('游戲失敗') = 0 # 游戲失敗,針停止旋轉(zhuǎn) music.play_once('溜走') if > 0: # 如果針還在旋轉(zhuǎn) score = score + 1 # 得分加1 needles.append(newNeedle) # 把新針加入列表中 pgzrun.go() # 開始執(zhí)行游戲分步驟代碼、圖片音效素材、講解視頻可以從異步社區(qū)下載: 隨著游戲的進(jìn)行,針的旋轉(zhuǎn)速度越來越快,游戲難度越來越大;2. 中間顯示為第三章的同心圓,同心圓每被針射中一次,換一次隨機(jī)顏色;3. 嘗試在畫面右邊新增一位玩家,實(shí)現(xiàn)雙人版的見縫插針游戲。讀者也可以參考本章的開發(fā)思路,嘗試設(shè)計(jì)并分步驟實(shí)現(xiàn)旋轉(zhuǎn)炮臺(tái)射擊氣球的小游戲。
這個(gè)超長(zhǎng)假期,寫了一本《Python游戲趣味編程》。通過趣味游戲開發(fā),學(xué)習(xí)Python編程;語法知識(shí)穿插在12個(gè)案例開發(fā)過程中講解,上手容易,有成就感,可拓展性強(qiáng)。以下為12個(gè)游戲案例的集錦視頻:Python游戲趣味編程
本文僅針對(duì)8-16歲的青少年,所以流程是按如何去教好中小學(xué)生走的,并不適合成人找工作學(xué)習(xí),因?yàn)檫M(jìn)度也是按照青少年走的大家好,我是C大叔,從事少兒編程行業(yè)三年有余(2016年從事少兒編程行業(yè),少兒編程概念是2015年在中國(guó)正式提出的)。一直以來都是在做scratch,以及信息學(xué)奧賽C++的講師,教研等工作,但目前發(fā)現(xiàn)python課程非?;鸨瑸榱俗屝∨笥岩材芨玫膶W(xué)python課程,因此準(zhǔn)備開啟一系列的專欄,介于我對(duì)少兒編程,少兒編程理念,以及對(duì)小學(xué)生編程學(xué)習(xí)能力的培養(yǎng)較為熟練,但對(duì)于python這門編程語言不是特別熟練(三年內(nèi)都在從事scratch,以及信息學(xué)奧賽C++的講師及教研工作),所以有不足的地方希望大家能夠指出來,互相學(xué)習(xí)。。。先謝謝大家了準(zhǔn)備工作環(huán)境搭建新建python項(xiàng)目在pycharm中安裝pygame正式學(xué)習(xí)代碼及文件導(dǎo)入學(xué)習(xí)1.準(zhǔn)備工作1)環(huán)境搭建:參考 pygame import sys pygame.init() screen = pygame.display.set_mode((1173,502)) pygame.display.set_caption('壓扁小鳥') bg = pygame.image.load("img/bg.jpg") logo = pygame.image.load("img/logo.png") bird = pygame.image.load("img/bird.png") angrybird = pygame.image.load("img/angrybird.png") pygame.display.update() while True: for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() exit() 新建一個(gè)文件夾命名為img(如下圖) 將下面素材復(fù)制到img文件夾中l(wèi)ogo.pngbird..pngbg.png如圖所示2)學(xué)習(xí)(1)編譯運(yùn)行我們已經(jīng)復(fù)制過來一段代碼了,那怎么運(yùn)行呢?現(xiàn)在點(diǎn)擊Run-->Run,選擇test01(這里老師新建的python文件命名為test01),如果跟參考教程一樣的話應(yīng)該是demo1,這里默認(rèn)tese01,選擇test01,會(huì)彈出一個(gè)pygame運(yùn)行框.(2)坐標(biāo)圖上粉紅衣服小女孩在第3列,第2排,我們可以簡(jiǎn)稱為她的坐標(biāo)為(3,2),即可以用(x,y)來表示位置下圖是計(jì)算機(jī)的坐標(biāo)系,是以左上角為坐標(biāo)原點(diǎn),向右出發(fā)x軸上的坐標(biāo)會(huì)增大,向下出發(fā)y軸的坐標(biāo)會(huì)增大剛剛運(yùn)行出來的框框同學(xué)們還記得嗎,它的左上角的坐標(biāo)就是(0,0),向右出發(fā)x軸上的坐標(biāo)會(huì)增大,向下出發(fā)y軸的坐標(biāo)會(huì)增大,現(xiàn)在我們來給運(yùn)行出來的這個(gè)框框添加一張背景圖,也就是畫一個(gè)背景,圖片是一個(gè)面,它的坐標(biāo)點(diǎn)在哪呢?其實(shí)跟計(jì)算機(jī)一樣,它的坐標(biāo)點(diǎn)也是在左上角,也就是說圖片是以左上角為坐標(biāo)點(diǎn)的。那么在哪里畫呢?同學(xué)們可以看到我們的12行是空著的,我們把鼠標(biāo)點(diǎn)在第12行,在上面輸入下面代碼:screen.blit(bg,(0,0)) 上面代碼表示的是,把bg(背景)這張圖片畫在pygame屏幕的左上角,運(yùn)行后會(huì)發(fā)現(xiàn)圖片左上角與屏幕左上角重疊了接下來我們?cè)佼嬕恢恍▲B,我們把它畫在(100,200)的位置,即:screen.blit(bird,(100,200))這樣的話屏幕上就會(huì)出現(xiàn)一張背景和一只小鳥了?。?!現(xiàn)在還剩下兩張圖片,請(qǐng)同學(xué)們自己試一下吧?如果還有疑問可以評(píng)論或者私聊哦,也可以關(guān)注我的公眾號(hào)給我發(fā)私信,WX公眾號(hào)為:NOIP信奧網(wǎng),哈哈哈,聽這公眾號(hào)的名字就知道老師是教信奧賽的。
如果以上內(nèi)容沒有幫到您,歡迎電話聯(lián)系我們,或者聯(lián)系在線客服咨詢
只要一個(gè)電話
我們免費(fèi)為您回電