python编程少儿游戏编程_少儿编程课堂|python – 用游戏学编程
学习编程是很快乐的事情。当我们自己开发出一套时下流行的游戏时,这满满的成就感比玩儿游戏本身高出了不知道会有多少倍。
接下来一段时间我们就python从0开始学习怎么开发 flappy brid 游戏。在学习之前,我们不需要有任何编程基础,只要会打开电脑上网即可。通过本系列课程的学习,同学们可以掌握python编程基础。能够自己动手开发一些自己喜欢的游戏。
在开始编程之前,让我们再看一下这个游戏怎么运行的吧。
看过flappy brid怎么玩儿之后,我们一起动手实现它。同学们按照下面的步骤完成本节课的学习。
安装python及IDE可以参考这个课程:
https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738150500472fd5785c194ebea336061163a8a974000
1. 怎么制作一个游戏
我们玩儿的游戏。从外观上看,包括:游戏背景、游戏角色、游戏声音、游戏动作几个模块。总结起来就是,我们的游戏角色在游戏背景上执行指定的动作,发出指定的声音。
用python编写游戏也是一样。我们首先设计好游戏大纲,把游戏大纲用python语言实现。然后填充好视觉图片和声音特效,我们的游戏就开发完成了。
2.pygame介绍
使用python开发游戏时,我们经常引入pygame库。什么是“库”呢?python库就是别人写好的一些完成特定功能的代码。就像我们手机安装的有各种各样的App,python也有各种各样的库。pygame就是python开发游戏常用的库。
我们为什么要使用python库呢?一些想计算器等简单的程序,我们只需要自己写代码就可以完成整个程序的开发。但是像我们玩儿的手机游戏、用的微信、QQ等程序都有比较复杂的功能,如果整个程序都有我们来开发。那会是几十万行代码的工作量,由于代码行数多,还容易引起bug。建筑工人盖楼时,我们不会在工地上自己做钢板瓷砖,而是用其他团队给我们生产好的瓷砖直接使用。我们写程序时也会经常使用其他团队开发的‘库’来简化我们的程序,通过引入库,我们可以和世界上任何一个程序员一起合作,协同开发。
pygame作为python的游戏库,具有 简单易用、功能完整、只需要少量代码即可完成游戏渲染等特点。是我们用python开发游戏的利器。
3.pygame安装
要想给python安装库,我们经常使用pip工具作为辅助。pip的安装方法如下。
1:用浏览器打开
https://files.pythonhosted.org/packages/ae/e8/2340d46ecadb1692a1e455f13f75e596d4eab3d11a57446f08259dee8f02/pip-10.0.1.tar.gz 压缩包下载后解压到指定文件夹
2: 用命令行进入解压后的文件夹,运行 python setup.py install 命令,完成pip的安装
pip安装完成后,我们就可以使用 python -m pip install -U pygame –user 命令安装 pygame了。
4.pygame-helloworld
pygame库安装好后,我们就可以用python开发游戏了。我们打开pycharm,新建一个python文件,将下面的代码粘贴到文件中,我们的第一个游戏就制作完成了!虽然有些简单,但是也像模像样。
import sys, pygame
pygame.init()
width = 320
height = 240
speed = [2, 2]
screen = pygame.display.set_mode([width, height])
ball = pygame.image.load("../assets/sprites/ball.gif")
ball_rect = ball.get_rect()
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
ball_rect = ball_rect.move(speed)
print(ball_rect.left, ball_rect.right, ball_rect.top, ball_rect.bottom)
if ball_rect.left < 0 or ball_rect.right > width:
speed[0] = -speed[0]
if ball_rect.top < 0 or ball_rect.bottom > height:
speed[1] = -speed[1]
screen.fill([0, 0, 0])
screen.blit(ball, ball_rect)
pygame.display.flip()
我们发现代码是由一行行英语句子来组成的,如果我们认识这些单词,阅读这些代码就相当简单了。编程大量的依靠数学和英语,我们一定要在学校里把数学和英语掌握好哦。
5. pygame核心模块介绍
cursors
加载光标
display
访问显示设备
draw
绘制形状、线和点
event
管理事件
image
加载和存储图片
key
读取键盘按键
mouse
鼠标
sndarray
操作声音数据
time
管理时间和帧信息
transform
缩放和移动图像
6. FlappyBird让鸟儿动起来
接下来,我们就来开发FlappyBird游戏。这节课,我们先完成游戏背景、小鸟起飞的部分。
首先我们还是来看一下代码,再新建一个python文件,将下面的代码粘贴到文件中,点击运行。我们发现游戏背景和小鸟就出现了。当我们按下键盘的空格键,小鸟还会向上飞。
import sys
import pygame
from pygame.locals import *
screenWidth = 288
screenHeight = 512
pygame.init()
pygame.display.set_caption('Flappy Bird')
fpsClock = pygame.time.Clock()
screen = pygame.display.set_mode((screenWidth, screenHeight))
background = pygame.image.load('../assets/sprites/background-day.png').convert()
player = pygame.image.load('../assets/sprites/redbird-upflap.png').convert_alpha()
playerX = int(screenWidth * 0.2)
playerY = int((screenHeight - player.get_height()) / 2)
while True:
screen.blit(background, (0, 0))
screen.blit(player, (playerX, playerY))
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type == KEYDOWN and event.key == K_SPACE:
playerY = playerY - 20
pygame.display.update()
fpsClock.tick(60)
好了,这节课就讲完了。本节我们首先复习了什么是python。什么是python的库。介绍了pygame,用pygame写了我们的第一个游戏。接下来,我们一起完成Flappy Brid游戏吧。
python编程少儿游戏编程_少儿编程课堂|python – 用游戏学编程相关推荐
- python全栈开发下载_网易云课堂Python Flask框架全栈开发,全套视频教程学习资料通过百度云网盘下载...
适用人群 1.想使用Python快速开发网站的. 2.前端开发者,想学习后端开发逻辑的. 3.有编程经验,想学习Flask的. 课程概述 本套课程的目标是从零基础开始,使用Flask框架开发企业级的项 ...
- python可以学会编程语言吗_为什么我建议你一定要学Python?
你有被朋友圈掀起的python热"烫到"了吗? 之前我就被朋友圈的一则python广告惊到了! 今天见到这个广告的点赞评论依旧那么多!热度丝毫没有要减的意思(目瞪口呆.jpg) 朋 ...
- 编程之类的文案_少儿编程宣传推广文案
我们是一家趣味编程头脑训练营,以小学生为训练对象,主要是以解决家长对孩子的学习教育问题为依据,让孩子能够主动参与学习,激发孩子的学习兴趣,培养孩子探索未知的兴趣和勇气.特征集一句少儿编程宣传推广文案, ...
- 用java玩的游戏平台_分享4个边玩边学Python的编程游戏网站
原标题:分享4个边玩边学Python的编程游戏网站 前言 大家好,欢迎来到 Crossin的编程教室 ! 学习编程虽然对有些人来说是件乐事,但是对大多数人来说仍然是一件比较枯燥困难的事情.当然,面临这 ...
- python编程思维导图_用来梳理 Python 编程核心知识15张思维导图
原标题:用来梳理 Python 编程核心知识15张思维导图 小编这次在逛论坛的时候,无意中发现了一份python的武功秘籍,也就是一份思维导图,堪称业界经典! 思维导图可以有力地激发你的联想,通过一个 ...
- python初学者编程指南源码_如何系统地自学 Python?
是否非常想学好 Python,一方面被琐事纠缠,一直没能动手,另一方面,担心学习成本太高,心里默默敲着退堂鼓? 幸运的是,Python 是一门初学者友好的编程语言,想要完全掌握它,你不必花上太多的时间 ...
- 小孩子学python有什么用途和价值_小码精灵:为什么让孩子学编程是最有价值投资...
原标题:小码精灵:为什么让孩子学编程是最有价值投资 (小码精灵编程课) 时光永远不会逆行,把握属于自己的每一天. 现在的孩子,除了白天基础课程的学习外,还要奔走在各大培训班之间. 家长们认为,让孩子在 ...
- python turtle绕原点旋转_「加德老师与小朋友们的编程之旅」Python海龟作图(上)
加德老师寄语: 小朋友们,家长朋友们,大家好! [加德老师与小朋友们的编程之旅]今天迎来第二节课--用python进行海龟作图(上) Python被誉为现今人工智能第一语言,适合9岁以上孩子进行编程入 ...
- python编程要懂英语吗_初中毕业没有英语基础能学编程吗?该学C还是Python?
初中毕业,现在想自学编程,想问一下先学英语还是先学编程语言,先学什么语言?我初中毕业3年了,现在18,初中的学的基本上忘记了,现在也有时间,想把它当做一辈子的事业来做,但对编程这方面还是不怎么了解,还 ...
- python计时器程序设计总框图_【怎么用python编写计时器?这个编程的方法你一定不要错过】- 环球网校...
[摘要]现在学习python的人都在思考,怎么用python编写计时器?这个编程的方法你一定不要错过,环球网校小编建议大家可以试着自己编写功能性代码,毕竟实践出真知,所以你一定要知道怎么用python ...
最新文章
- 30岁暂别职场、40岁提前退休:不上班的生活,开心吗?
- 为freetextbox1.6.5上传图片加上水印
- ntu ERIC 课程笔记
- U3D 场景切换时 脚本对象,GO对象,资源对象的问题
- 本周日,王海峰、朱军、李宏毅等大咖邀你加入这场AI开发者盛宴
- hi3519av100 2.0版本sdk编译提示 cannot find uuid library required for mkfs.ubifs
- IBM HTTP Server Websphere Plugin
- SAP Spartacus index.html 里的 occ-backend-base-url 如何被解析的?
- Cookie、cookie使用方法
- winform中treeview控件实现部分节点显示checkbox
- 刚接触Python,这么多IDE我该怎么选
- android contentresolver 批量,Android之使用ContentResolver对通信录中的数据进行简单操作...
- Cards BZOJ 1004
- 译Selenium Python Bindings 6 - WebDriver API
- 局部搜索算法 之 局部搜索算法,爬山法,模拟退火,集束搜索,遗传算法
- 医学图像处理眼科检查
- JJ斗地主记牌器java开发,【欢乐斗地主记牌器制作】遇到两个问题
- Windows下利用N2N访问内网资源,点对网的实现
- 2018年秋招运维岗面试常见python和数据结构知识点总结
- 《网络攻防》Web安全基础实践