本文目錄一覽:
- 1、python基礎教程
- 2、Python遊戲開發,Python實現貪吃蛇小遊戲與吃豆豆 附帶源碼
- 3、Python有哪些種類?
- 4、請問使用Python (Pygame)在mac上寫小的遊戲,調用pygame.sprite.groupcollide()時的bug
python基礎教程
你可以看黑馬程序員Python入門教程:
教程學習時間15天
1-3天內容:為Linux基礎命令
4-13天內容:為Python基礎教程14-15 天內容:為飛機大戰項目演練
第一階段(1-3天):
該階段首先通過介紹不同領域的三種操作系統,操作系統的發展簡史以及Linux系統的文件目錄結構讓大家對Linux系統有一個簡單的認識,同時知道為什麼要學習Linux命令。然後我們會正式學習Linux命令
1. 文件和目錄命令:ls,cd,touch,mkdir,rm
2. 拷貝和移動命令:tree,cp,mv
3. 文件內容命令:cat,more,grep
4. 遠程管理命令:ifconfig,ping,SSH的工作方式簡介以及ssh命令
5. 用戶許可權及用戶管理命令:chmod,chgrp,useradd,passwd,userdel
6. 軟體安裝及壓縮命令:apt簡介及命令,tar,gzip壓縮命令,bzip2壓縮命令
7. vim的基本使用
第二階段(4-10天)
該階段我們正式進入Python這門語言的學習,首先通過了解Python語言的起源,Python語言的設計目標,Python語言的設計哲學,Python語言的優缺點和面向對象的基本概念,以及Python語言的執行方式,還有Python集成開發環境PyCharm的使用為我們接下來的學習做鋪墊。
然後我們會學習int,string,float三種簡單的變數類型,變數間的計算,變數的輸入輸出,if判斷語句,while循環語句,for循環語句,break和continue的使用,函數的基本使用,模塊的使用,列表,元組,字典三種高級變數,字元串的常用操作。
接下來我們會通過一個名片管理系統的案例,把這一階段的知識進行一個串聯。在學習名片管理系統時,首先我們會學習怎麼去搭建這一系統的框架,然後我們會分別實現新增名片,顯示全部名片,查詢名片,刪除名片,修改名片這些功能。
最後我們會學習語法的進階內容,全局變數,局部變數,可變數據類型和不可變數據類型以及函數返回多個值,函數的預設參數,多值參數,遞歸的基本使用。
第三階段(11-13天)
該階段我們會學習面向對象(OOP)這一重要的編程思想,首先學習的知識點有類和對象的基本概念,dir函數,self的作用,初始化方法__init__,內置函數__str__,__del__,單繼承,方法重寫,私有屬性和方法,多繼承,多態,類屬性,靜態方法。
然後我們還會學習單例模式這一設計模式,異常的捕獲,異常的拋出,from import局部導入,from import導入同名工具, from import導入所有工具,包的使用,製作模塊,pip的使用以及文件的相關操作。
第四階段(14-15天)
該階段是項目演練階段,我們會帶領大家通過使用之前學習過的知識開發飛機大戰這一經典遊戲,項目中分別有遊戲窗口,圖像繪製,遊戲循環,事件監聽,精靈和精靈組以及創建敵機,創建英雄和發射子彈,碰撞檢測等模塊
Python遊戲開發,Python實現貪吃蛇小遊戲與吃豆豆 附帶源碼
Python版本: 3.6.4
相關模塊:
pygame模塊;
以及一些Python自帶的模塊。
安裝Python並添加到環境變數,pip安裝需要的相關模塊即可。
貪吃蛇的 遊戲 規則應該不需要我多做介紹了吧T_T。寫個貪吃蛇 遊戲 其實還是很簡單的。首先,我們進行一下 遊戲 初始化:
然後定義一個貪吃蛇類:
其中head_coord用來記錄蛇頭所在位置,而tail_coords是一個二維數組,用來記錄所有蛇身的位置。一開始,貪吃蛇長為3,並且位置是隨機生成的。用戶通過 鍵來控制貪吃蛇的行動:
需要注意的是,貪吃蛇不能180 大拐彎,只能90 地拐彎。例如正在向左行動的貪吃蛇不能瞬間變成向右行動。具體而言,代碼實現如下:
然後,我們需要隨機生成一個食物,且需要保證該食物的位置不與貪吃蛇的位置相同:
在更新貪吃蛇的時候,如果它吃到了食物,則蛇身長加一,否則只是簡單的按照給定的方向行動而不改變蛇身長度:
同時,當貪吃蛇吃到食物時,需要重新生成一個新的食物:
最後,當貪吃蛇碰到牆壁或者蛇頭碰到蛇身時, 遊戲 結束:
並顯示一下 遊戲 結束界面:
玩家通過 鍵控制 遊戲 的主角吃豆人吃掉藏在迷宮內的所有豆子,並且不能被鬼魂抓到。
若能順利吃完迷宮內的所有豆子並且不被鬼魂抓到,則 遊戲 勝利,否則 遊戲 失敗。
逐步實現:
Step1:定義 遊戲 精靈類
首先,讓我們先來明確一下該 遊戲 需要哪些 遊戲 精靈類。
① 牆類
② 食物類(即豆豆)
③ 角色類
角色類包括吃豆人和鬼魂,鬼魂由電腦控制其運動軌跡,吃豆人由玩家控制其運動軌跡。
顯然,其均需具備更新角色位置和改變角色運動方向的能力,其源代碼如下:
Step2:設計 遊戲 地圖
利用Step1中定義的 遊戲 精靈類,我們就可以開始設計 遊戲 地圖了。由於時間有限,我只寫了一個關卡的 遊戲 地圖,有興趣的小夥伴可以在此基礎上進行擴展(在我的源代碼基礎上進行擴展是很方便滴~)。 遊戲 地圖的設計包括以下四方面內容:
① 創建牆
② 創建門(一開始關幽靈用的)
image.gif
③ 創建角色
④ 創建食物
因為食物不能和牆、門以及角色的位置重疊,所以為了方便設計 遊戲 地圖,要先創建完牆、門以及角色後再創建食物:
Step3:設計 遊戲 主循環
接下來開始設計 遊戲 主循環。首先是初始化:
然後定義主函數:
其中startLevelGame函數用於開始某一關 遊戲 ,其源代碼如下:
showText函數用於在 遊戲 結束或關卡切換時在 遊戲 界面中顯示提示性文字,其源代碼如下:
Python有哪些種類?
Python有哪些種類?
1、數值型(Numbers)
2、布爾型(Booleans)
3、字元串(String)
4、Python容器
要快速學會Python,謹記『3個』『4類』『5大』『6種』這四個數字就可以了。
三個基本概念
1. 結構化(函數、模塊、包)
2. 面向對象(類及派生類、重載)
3. 虛擬環境(版本管理、環境隔離)
四類基本操作
1. 數據操作(各種數據類型的操作)
2. 文件操作(文件打開讀寫關閉等操作)
3. 模塊操作(導入使用、模塊查尋等操作)
4.並發操作(進程與線程、鎖/信號號/安全隊列等)
五大基本語句(5)
1. 賦值語句(變數、對象、賦值運算符)
2. 輸入輸出語句(print, input函數)
3. 條件判斷語句(if-elif-else語句)
4. 循環語句(遍歷循環for-in-else、條件循環while-else、break/continue)
5. 異常處理語句(try-except-else-finally)
六種數據類型(6)
1. 數字類型(int,bool,float,complex)
2. 字元串(str)
3. 列表(list)
4. 元組(tuple)
5. 字典(dict)
6. 集合(set)
如果你能夠把上面的幾個要點都掌握了,那麼就算是真正地入門了。
請問使用Python (Pygame)在mac上寫小的遊戲,調用pygame.sprite.groupcollide()時的bug
一次移動是”跳過”移動速度這麼多的像素,而不過逐個像素的移動
方法groupcollide()是檢測兩個精靈組中精靈們的矩形衝突
速度過快導致精靈單次移動就直接跨越了另一個精靈,就不存在兩個精靈矩形的衝突,就不會檢測到
就像走路的時候跨過了一坨泥一樣
這麼說能明白嗎?
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/289528.html