最近随便用python的pygame编了这个打字小游戏

只要有字母调到窗口底部就结束

上代码:

import pygame.freetype
import sys
import random pygame.init()
screen = pygame.display.set_mode((500, 400))
pygame.display.set_caption('game') f = pygame.freetype.Font(None, 60)
f2 = pygame.freetype.Font(None, 30)
p = 0
w = [50, 140, 230, 320, 410]
l = []
t = 0
s = 0 while True:
pygame.time.delay(20)
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.KEYDOWN:
if p == 1:
for i in l:
if ord(i[0]) == event.key - 32:
l.remove(i)
s += 1
elif event.type == pygame.MOUSEBUTTONDOWN:
if p == 0:
p = 1
for i in range(0, 5):
l.append([chr(random.randint(65, 80)), w[i], 50])
screen.fill((0, 0, 0))
if p == 0:
f.render_to(screen, [180, 250], "start", fgcolor=(255, 255, 255))
if p == 1:
t += 1
if t == 100:
t = 0
for i in range(0, 5):
l.append([chr(random.randint(65, 80)), w[i], 50])
for i in l:
f.render_to(screen, [i[1], i[2]], i[0], fgcolor=(255, 255, 255))
for i in range(0, len(l)):
l[i][2] += 1
if l[i][2] >= 400:
p = 2
f2.render_to(screen, [5, 5], "score: %d" % s, fgcolor=(255, 255, 255))
if p == 2:
f.render_to(screen, [100, 100], "game over", fgcolor=(255, 255, 255))
f.render_to(screen, [100, 250], "score: %d" % s, fgcolor=(255, 255, 255))
pygame.display.update()

可以训练人的打字能力和反应速度

截图

最新文章

  1. zookeeper源码分析之二客户端启动
  2. linux下vim的常用指令
  3. css“变形”效果
  4. 正则表达式 ——python 基础
  5. JS方法
  6. Web前端开发人员和设计师必读文章推荐
  7. 各种命令,以及FAQ..持续更新.....
  8. JMeter Http请求POST提交token失败,取样器结果Response Code 415
  9. Thinkphp5 常量设置问题
  10. 用yeoman搭建react画廊项目笔记
  11. 微信小程序 TLS 版本必须大于等于1.2问题解决
  12. [转]Understanding OpenStack Authentication: Keystone PKI
  13. 从.Net到Java学习第五篇——Spring Boot &&Profile &&Swagger2
  14. 《http权威指南》读书笔记16
  15. redis之安装与简单使用
  16. [技术选型] CDH-Cloudera Distribution Hadoop
  17. Windows程序执行过程
  18. x64免签名驱动程序
  19. .net mvc nopi生成word
  20. 自己从0开始学习Unity的笔记 II (C#条件语句基础练习)

热门文章

  1. Linux命令(九)之安装mysql
  2. JVM学习笔记-第六章-类文件结构
  3. thunderbird发送纯文本邮件
  4. 【笔记】偏差方差权衡 Bias Variance Trade off
  5. JVM的GC机制
  6. VRRP的基本配置
  7. STM32—驱动BT-06蓝牙模块传输数据
  8. 使用VC6.0开发COM组件 - 傻瓜式,不讲理论,只讲实例
  9. SpringCloud降级熔断 Hystrix
  10. 带有附件及图片正文的JavaMail邮件发送