当前位置:首页 > 网站源码 > 正文内容

python简单小游戏代码thonny(python简单小游戏代码20行)

网站源码1年前 (2023-01-19)664

今天给各位分享python简单小游戏代码thonny的知识,其中也会对python简单小游戏代码20行进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

100行Python代码,轻松完成贪吃蛇小游戏?

你是想让我们向你提问题?你这个放错地方了,应该发布到自己的博客或论坛上面才对

python入门可以做的小游戏

1、Python入门拼图小游戏

简单介绍:

将图像分为m×n个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状。

2、Python入门推箱子小游戏

简单介绍:

这是来自日本的一个经典游戏,在狭小的仓库中,要求把木箱放到指定的位置,如果不小心就可能出现箱子无法移动或者通道被堵的情况,所以,如何巧妙利用有限的空间和通道,合理安排移动顺序,就成了这个游戏能否通关的关键。

3、Python入门小游戏之外星人入侵

简单介绍:

玩家可以通过鼠标控制飞船的移动和射击,如果能在敌人达到游戏界面低端之前消灭所有敌人,则游戏胜利,否则游戏失败。

4、Python入门小游戏之吃豆子

简单介绍:

通过键盘方向键,控制游戏的人物吃豆人,吃掉藏在迷宫内的所有豆子,并且不能被敌人抓到。

5、Python入门小游戏之宝石消消乐

简单介绍:

玩家通过鼠标交换相邻的拼图,若交换后,在水平/竖直方向存在连续三个相同的拼图,则这些拼图消失,玩家得分。

6、Python入门小游戏之乒乓球对战

简单介绍:

中间是球网,玩家通过上下键移动球拍,并且这个游戏是可以两个人玩的哦。

7、还有其他四个游戏

它们是:炸弹人小游戏、逃出迷宫、飞扬的小鸟、五子棋

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实现贪吃蛇小游戏与吃豆豆 附带源码

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、Python猜拳小游戏代码:

2、import random #导入随机模块

3、

4、num = 1

5、yin_num = 0

6、shu_num = 0

7、while num 2:

12、 print('不能出大于2的值')

13、 else:

14、 data = ['石头', '剪刀', '布']

15、 com = random.randint(0, 2)

16、 print(您出的是{},电脑出的是{}.format(data[user], data[com]))

17、 if user == com:

18、 print('平局')

19、 continue

20、 elif (user == 0 and com == 1) or (user == 1 and com == 2) or (user == 2 and com == 0):

21、 print('你赢了')

22、 yin_num += 1

23、 else:

24、 print('你输了')

25、 shu_num += 1

26、 num += 1

27、Python数字炸弹小游戏代码:

28、import random

29、import time

30、

31、bomb = random.randint(1, 99)

32、print(bomb)

33、start = 0

34、end = 99

35、while 1 == 1:

36、

37、 people = int(input('请输入{}到{}之间的数:'.format(start, end)))

38、 if people bomb:

39、 print('大了')

40、 end = people

41、 elif people bomb:

42、 print('小了')

43、 start = people

44、 else:

45、 print('BOOM!!!')

46、 break

47、 print('等待电脑了输入{}到{}之间的数:'.format(start, end))

48、 time.sleep(1)

49、 com = random.randint(start + 1, end - 1)

50、 print('电脑输入:{}'.format(com))

51、 if com bomb:

52、 print('大了')

53、 end = com

54、 elif com bomb:

55、 print('小了')

56、 start = com

57、 else:

58、 print('BOOM!!!')

59、 break

请用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简单小游戏代码thonny的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于python简单小游戏代码20行、python简单小游戏代码thonny的信息别忘了在本站进行查找喔。

扫描二维码推送至手机访问。

版权声明:本文由我的模板布,如需转载请注明出处。


本文链接:http://www.60200875.com/post/1378.html

分享给朋友:

“python简单小游戏代码thonny(python简单小游戏代码20行)” 的相关文章

九方智投擒龙版(九方智投擒龙版app下载)

九方智投擒龙版(九方智投擒龙版app下载)

本篇文章给大家谈谈九方智投擒龙版,以及九方智投擒龙版app下载对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、有九方智投的学员吗?九方智投怎么样? 2、九方智投擒龙版首...

apk编辑器修改包名后安装不了(apk编辑器修改包名后不能用)

apk编辑器修改包名后安装不了(apk编辑器修改包名后不能用)

今天给各位分享apk编辑器修改包名后安装不了的知识,其中也会对apk编辑器修改包名后不能用进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、apk编辑器修改应用...

溯源码进口燕窝价位(溯源码燕窝产地)

溯源码进口燕窝价位(溯源码燕窝产地)

今天给各位分享溯源码进口燕窝价位的知识,其中也会对溯源码燕窝产地进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、燕窝一盒一般多少钱 2、正宗的燕窝一克多少...

个人发卡网搭建平台(怎么搭建发卡平台)

个人发卡网搭建平台(怎么搭建发卡平台)

本篇文章给大家谈谈个人发卡网搭建平台,以及怎么搭建发卡平台对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、个体工商户能搭建发卡网吗? 2、如何创建一个自己的发卡网平台,...

直播8手机版(直播8手机版CBA)

直播8手机版(直播8手机版CBA)

今天给各位分享直播8手机版的知识,其中也会对直播8手机版CBA进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、手机上看直播世界杯怎么弄啊?谢谢 2、直播8...

淘宝直播属于教育类直播平台吗(淘宝直播官方台和淘宝直播区别)

淘宝直播属于教育类直播平台吗(淘宝直播官方台和淘宝直播区别)

今天给各位分享淘宝直播属于教育类直播平台吗的知识,其中也会对淘宝直播官方台和淘宝直播区别进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、淘宝直播、京东直播、抖...