python绘制坐标点画出半径_24行Python代码让小球“弹”起来
首先我們導(dǎo)入pygame,pgzrun庫,如果沒有可用pip進(jìn)行安裝。
第一行代碼其中import是Python的關(guān)鍵字,表示導(dǎo)入一個(gè)庫,以便在程序中使用庫中的功能。可以在同一行中導(dǎo)入多個(gè)模塊,模塊名之間用逗號(hào)隔開。跟在#(叫做井號(hào))后邊的任何文本都是一條注釋。注釋是程序員針對(duì)代碼做些什么而給出的注解。注釋不是供Python讀取的,會(huì)忽略掉注釋。
第二行與第三行分別設(shè)置了窗口的寬度與高度,得到一個(gè)寬800像素,長(zhǎng)600像素的窗口。
在這之后就是設(shè)置小球了。
第四行與第五行設(shè)置了小球在笛卡爾坐標(biāo)系中的初始位置,在這里,我們?nèi)〈翱诘膶挾扰c高度的一半,使小球置于中央位置,當(dāng)然,也可以直接把小球的xy坐標(biāo)用數(shù)字表示。
第六行與第七行設(shè)置了小球在x,y方向的速度,第八行設(shè)置了小球的半徑。
小球的位置方向與速度都設(shè)置好了,接下來就是設(shè)計(jì)顏色了。
為了使代碼直觀可讀,第九行為空行,在python代碼中,空行和注釋不會(huì)被計(jì)算機(jī)讀取。
在第十行,def draw():表示定義了一個(gè)繪圖函數(shù),冒號(hào)后面的語句表示具體的繪制工作。第十一行中,screen表示屏幕,fill表示布滿,white表示白色,在Python中,單引號(hào)' '或雙引號(hào)" "內(nèi)的一個(gè)字符序列,叫作字符串。利用字符串,我們可以給背景設(shè)定不同的顏色。
但需要注意的是,繪制函數(shù)draw()內(nèi)的語句需要縮進(jìn),即screen.fill('white') 語句前面要空出一些。Python中可以用空格鍵或Tab鍵來實(shí)現(xiàn)代碼的縮進(jìn)。同一函數(shù)內(nèi)部的多行語句,需要保持縮進(jìn)量一致,即最左邊需要對(duì)齊。
在12,13行我們繪制一個(gè),坐標(biāo)(x,y),半徑r,紅色的填充圓。
在15-18行,新增代碼def update(): ,定義了一個(gè)更新函數(shù),當(dāng)程序運(yùn)行后,每幀都會(huì)執(zhí)行一次該函數(shù)。其中的語句r = r + 1表示半徑r每次增加1,使得小球的半徑從1開始,依次增加為2、3、4、5、6……
global r語句表示r為全局變量,如果函數(shù)內(nèi)部需要修改函數(shù)外部的變量,如在update()函數(shù)中修改函數(shù)外定義的變量r,就需要在函數(shù)內(nèi)部加上global r這一語句。
添加的代碼叫if語句,也叫選擇判斷語句。if語句的冒號(hào)后為if條件滿足才執(zhí)行的語句,在本示例中,當(dāng)小球與左右邊界相切時(shí),執(zhí)行x方向的速度變?yōu)橄喾磾?shù),即當(dāng)小球碰到左右邊界時(shí),x方向的速度反轉(zhuǎn),同理,當(dāng)小球碰到上下邊界時(shí),y方向的速度反轉(zhuǎn)。
第24行代碼pgzrun.go()表示讓我們編寫的游戲開始運(yùn)行,go是出發(fā)、啟動(dòng)的意思。
右鍵點(diǎn)擊項(xiàng)目名找到“run”就可以讓小球彈跳起來了,是不是還挺Q噠~
本文的python代碼來自《Python游戲趣味編程》一書的其中一個(gè)案例,感興趣的可以購買觀看。
========
贈(zèng)人玫瑰,手留余香,不要忘記點(diǎn)贊、收藏、關(guān)注 @人民郵電出版社 哦!
一鍵三連,感恩有你~
總結(jié)
以上是生活随笔為你收集整理的python绘制坐标点画出半径_24行Python代码让小球“弹”起来的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 果粉请注意!MacBook镜头不可遮挡,
- 下一篇: 为什么显卡一安装驱动就黑屏为啥一装显卡驱