導航:首頁 > 編程語言 > python簡單小游戲程序實例

python簡單小游戲程序實例

發布時間:2022-11-01 20:49:18

python能做什麼游戲

Python是一門高級且有趣的編程語言,除了網路爬蟲、人工智慧、數據分析之外,Python還可以進行游戲開發,為大家介紹五個支持Python的2D、3D游戲開發庫。
1、Cocos2d:是一系列開源軟體框架,用於構建跨平台2D游戲和應用程序,由cocos2d-x、cocos2d-js、cocos2d-xna和cocos2d多種框架組成,像大魚賭場、城堡沖突等小游戲,就是用此框架開發出來的。
2、Panda3D:是由迪士尼開發的3D游戲引擎,一個用於Python和C++程序的3D渲染和游戲開發框架,並由卡內基梅隴娛樂技術中心負責維護,使用C++編寫的,針對Python進行了完全的封裝。
3、Pygame:它是一組Python模塊,用來編寫游戲,可支持Python3.7,游戲例子有:紙牌游戲、超級馬里奧、擊球等多種游戲。
4、Pyogre:ogre 3D渲染引擎的Python綁定,可以用來開發游戲和模擬程序等任何3D應用,它的API更加穩定,也非常快速靈活。
5、RenPy:一個視覺小說引擎,被世界各地的成千萬的創造者所使用,它可以幫助你使用文字、圖像和聲音來講述電腦和移動設備上的故事。RenPy是開放源碼的,可免費的商業用途,易於學習的腳本語言任何人都能有效地編寫大型視覺小說,它的Python腳本足以用來模擬游戲。

⑵ 請用PYTHON編一個小游戲,如五子棋,連連看,貪吃蛇,掃雷,計算器等等

#!/usr/bin/python
from Tkinter import *
import random
class snake(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.body = [(0,0)]
self.bodyid = []
self.food = [ -1, -1 ]
self.foodid = -1
self.gridcount = 10
self.size = 500
self.di = 3
self.speed = 500
self.top = self.winfo_toplevel()
self.top.resizable(False, False)
self.grid()
self.canvas = Canvas(self)
self.canvas.grid()
self.canvas.config(width=self.size, height=self.size,relief=RIDGE)
self.drawgrid()
s = self.size/self.gridcount
id = self.canvas.create_rectangle(self.body[0][0]*s,self.body[0][1]*s,
(self.body[0][0]+1)*s, (self.body[0][1]+1)*s, fill="yellow")
self.bodyid.insert(0, id)
self.bind_all("<KeyRelease>", self.keyrelease)
self.drawfood()
self.after(self.speed, self.drawsnake)
def drawgrid(self):
s = self.size/self.gridcount
for i in range(0, self.gridcount+1):
self.canvas.create_line(i*s, 0, i*s, self.size)
self.canvas.create_line(0, i*s, self.size, i*s)
def drawsnake(self):
s = self.size/self.gridcount
head = self.body[0]
new = [head[0], head[1]]
if self.di == 1:
new[1] = (head[1]-1) % self.gridcount
elif self.di == 2:
new[0] = (head[0]+1) % self.gridcount
elif self.di == 3:
new[1] = (head[1]+1) % self.gridcount
else:
new[0] = (head[0]-1) % self.gridcount
next = ( new[0], new[1] )
if next in self.body:
exit()
elif next == (self.food[0], self.food[1]):
self.body.insert(0, next)
self.bodyid.insert(0, self.foodid)
self.drawfood()
else:
tail = self.body.pop()
id = self.bodyid.pop()
self.canvas.move(id, (next[0]-tail[0])*s, (next[1]-tail[1])*s)
self.body.insert(0, next)
self.bodyid.insert(0, id)
self.after(self.speed, self.drawsnake)
def drawfood(self):
s = self.size/self.gridcount
x = random.randrange(0, self.gridcount)
y = random.randrange(0, self.gridcount)
while (x, y) in self.body:
x = random.randrange(0, self.gridcount)
y = random.randrange(0, self.gridcount)
id = self.canvas.create_rectangle(x*s,y*s, (x+1)*s, (y+1)*s, fill="yellow")
self.food[0] = x
self.food[1] = y
self.foodid = id
def keyrelease(self, event):
if event.keysym == "Up" and self.di != 3:
self.di = 1
elif event.keysym == "Right" and self.di !=4:
self.di = 2
elif event.keysym == "Down" and self.di != 1:
self.di = 3
elif event.keysym == "Left" and self.di != 2:
self.di = 4
app = snake()
app.master.title("Greedy Snake")
app.mainloop()

貪食蛇

⑶ 推薦幾個適合新手練手的Python項目

《Python實戰:四周實現爬蟲系統》網路網盤免費下載

鏈接:

提取碼: xb

Python實戰:四周實現爬蟲系統

⑷ python能寫什麼小游戲

python可以做大多數網路游戲的,例如用一個pygame,做一些圖片,將圖片插入到pygame的python代碼中,編寫它的功能以及作用,多做一些,連在一起就是游戲了。
比如王者榮耀,首頁就是動圖的結合,圖片點擊效果可以通過代碼實現,裡面的對戰可以通過代碼控制圖片效果,以達到打鬥的場景。
只要學得精,有時間去做,去寫,一般的那些高級游戲都是可以做出來的

⑸ python入門可以做的小游戲

1、Python入門拼圖小游戲
簡單介紹:
將圖像分為m×n個矩形塊,並將圖像右下角的矩形塊替換為空白塊後,將這些矩形塊隨機擺放成原圖像的形狀。
2、Python入門推箱子小游戲
簡單介紹:
這是來自日本的一個經典游戲,在狹小的倉庫中,要求把木箱放到指定的位置,如果不小心就可能出現箱子無法移動或者通道被堵的情況,所以,如何巧妙利用有限的空間和通道,合理安排移動順序,就成了這個游戲能否通關的關鍵。
3、Python入門小游戲之外星人入侵
簡單介紹:
玩家可以通過滑鼠控制飛船的移動和射擊,如果能在敵人達到游戲界面低端之前消滅所有敵人,則游戲勝利,否則游戲失敗。
4、Python入門小游戲之吃豆子
簡單介紹:
通過鍵盤方向鍵,控制游戲的人物吃豆人,吃掉藏在迷宮內的所有豆子,並且不能被敵人抓到。
5、Python入門小游戲之寶石消消樂
簡單介紹:
玩家通過滑鼠交換相鄰的拼圖,若交換後,在水平/豎直方向存在連續三個相同的拼圖,則這些拼圖消失,玩家得分。
6、Python入門小游戲之乒乓球對戰
簡單介紹:
中間是球網,玩家通過上下鍵移動球拍,並且這個游戲是可以兩個人玩的哦。
7、還有其他四個游戲
它們是:炸彈人小游戲、逃出迷宮、飛揚的小鳥、五子棋

⑹ 如何用python程序編寫一個循環五次的小游戲,每次隨機產生兩個數字讓用戶計算這兩個數的

如果這是VB的程序,那麼可以用如下的得到兩個1~10的整數:

x=Int(Rnd*10)+1。

y=Int(Rnd*10)+1。

再加上循環for i=1 to 5可以。

#include <stdio.h>。

#include <stdlib.h> /* 隨機庫函數 */。

#include <time.h> /* 時間庫函數 */。

int count=0, ok=0; /* count表示回答次數, ok表示回答正確次數 */。

/* 加法函數 */。

int add(int x,int y)。


優點

簡單:Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣。它使你能夠專注於解決問題而不是去搞明白語言本身。

易學:Python極其容易上手,因為Python有極其簡單的說明文檔。

易讀、易維護:風格清晰劃一、強制縮進。

⑺ Python程序開發之簡單小程序實例(11)小游戲-跳動的小球

Python程序開發之簡單小程序實例

(11)小 游戲 -跳動的小球

一、項目功能

用戶控制擋板來阻擋跳動的小球。

二、項目分析

根據項目功能自定義兩個類,一個用於控制小球在窗體中的運動,一個用於接收用戶按下左右鍵時,擋板在窗體中的運動。在控制小球的類中,我們還需要考慮當小球下降時,碰到擋板時的位置判斷。

三、程序源代碼

源碼部分截圖:

源碼:

#!/usr/bin/python3.6

# -*- coding: GBK -*-

#導入相應模塊

from tkinter import *

import random

import time

#自定義小球的類 Ball

class Ball:

# 初始化

def __init__(self,canvas,paddle,color):

#傳遞畫布值

self.canvas=canvas

#傳遞擋板值

self.paddle=paddle

#畫圓並且保存其ID

self.id=canvas.create_oval(10,10,25,25,fill=color)

self.canvas.move(self.id,245,100)

#小球的水平位置起始列表

start=[-3,-2,-1,1,2,3]

#隨機化位置列表

random.shuffle(start)

self.x=start[0]

self.y=-2

self.canvas_heigh=self.canvas.winfo_height()#獲取窗口高度並保存

self.canvas_width=self.canvas.winfo_width()

#根據參數值繪制小球

def draw(self):

self.canvas.move(self.id,self.x,self.y)

pos=self.canvas.coords(self.id)#返回相應ID代表的圖形的當前坐標(左上角和右上角坐標)

#使得小球不會超出窗口

pad=self.canvas.coords(self.paddle.id)#獲取小球擋板的坐標

if pos[1]=self.canvas_heigh or(pos[3]>=pad[1] and pos[2]>=pad[0] and pos[2]

⑻ python做的游戲有哪些

比較大型的,使用Python的游戲有兩個,一個是《EVE》,還有一個是《文明》。另外GitHub上有很多開源的小游戲,下面給大家介紹一下:
1. Github上面有個項目Free Python Games,裡面集合了不少的Python開發的小游戲,能玩,也適合新手用來練練手,另外 PyGame 這個網站裡面裡面集合了很多Python開發的小游戲。
2. Python版本的 Flapy Bird 簡化版,但是感覺更加難玩了。當然你也可以嘗試用Python開發原版的 Flapy Bird,涵蓋了顏色圖像等:Flappy Block - 1.0。
相關推薦:《Python教程》
3. 小時候經常在手機上玩的一個游戲,也是一款經典的街機游戲,這款游戲進化之後其實就是一個打乒乓的小游戲,這里同樣有一個進化版本,圖形設計的更加好看:Ping Pong。
4. 以前初高中在學校很無聊的時候跟同桌或者前後桌玩的游戲,你還記得么?
5. 同樣一款小時候在小霸王上玩的游戲:Junk Jungle。
6. 除此之外,一款比較有名基於Pyhton的戰爭的游戲:Home - TaleWorlds Entertainment。
7. 一款看起來非常有趣的3D游戲:Galcon。

⑼ 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簡單小游戲程序實例相關的資料

熱點內容
我的世界國際服為什麼登不進伺服器 瀏覽:994
微盟程序員老婆 瀏覽:928
intellij創建java 瀏覽:110
java連接odbc 瀏覽:38
啟動修復無法修復電腦命令提示符 瀏覽:359
手機編程是什麼 瀏覽:97
山東移動程序員 瀏覽:163
蘇州java程序員培訓學校 瀏覽:476
單片機液晶驅動 瀏覽:854
魔拆app里能拆到什麼 瀏覽:130
新預演算法的立法理念 瀏覽:144
wdcpphp的路徑 瀏覽:134
單片機p0口電阻 瀏覽:926
瀏覽器中調簡訊文件夾 瀏覽:594
五菱宏光空調壓縮機 瀏覽:68
為什麼app佔用幾百兆 瀏覽:680
自動解壓失敗叫我聯系客服 瀏覽:484
易語言新手源碼 瀏覽:457
oa伺服器必須有固定ip地址 瀏覽:45
傳奇源碼分析是什麼 瀏覽:270