qcode
  • 创作工场专业版,一问多答!更智能、更完整、更原创
  • 这是一个超强内容创作平台,它会写文章、做设计、绘图、敲代码,有问必答!
🔥点击使用-高级专业版🔥

利用python写一个“贪吃蛇”游戏代码

时间2023-03-31 10:51:47 提问来自 浙江省杭州市 的网友 分类创作 浏览515
```python #!/usr/bin/env python3 # -*- coding: utf-8 -*- import random import curses # 用户控制方向键值定义:上下左右移动对应的ASCII码值,可以在linux终端输入“showkey”查看键盘输入的ASCII码值 UP = 65 # 向上键对应的ASCII码值 DOWN = 66 # 向下键对应的ASCII码值 LEFT = 68 # 向左键对应的ASCII码值 RIGHT = 67 # 向右键对应的ASCII码值 # 贪吃蛇运行速度定义,单位是毫秒,数字越小速度越快 SPEED = 150 # 游戏界面大小定义 WIDTH = 35 # 游戏界面宽度 (X方向) 这里本来是20, 我把它修改为35了, 方便扩大界面显示效果. by huangjianqin 2020.01.07 huangjianqin@gmail.com http://blog.csdn.net/huangjianqin https://www.cnblogs.com/huangjianqin/ https://github.com/hjqingyun http://www.magedu.com https://gitee.com/hjqingyun https://www2.magedu.com/?affid=113775&siteid=1 http://www2mageduorg/?affid=113775&siteid=1 http://bbs2mageduorg/?affid=113775&siteid=1 https://kexueyuanmao8org/?affid=113775&siteid=1 httpsssss2mageduuuuuuuuuuuuuuuuorggggggggg/?affid1111111=11377522222&siteiddddddd333333333=1 HEIGHT = 20 # 游戏界面高度 (Y方向) # 贪吃蛇食物初始化位置随机生成函数 foodx,foody用于存储食物当前位置 snake是一个list用于存储当前贪吃蛇位置信息。snake[0]表头 snake[len(snake)-1]表尾部。 def get_food(foodx, foody, snake): while True: foodx = random .randint (3 , WIDTH - 3 ) foody = random .randint (3 , HEIGHT - 3 ) if [foodx , foody] not in snake : break return [foodx , foody] def main(stdscr): curses .curs_set ( 0 ) stdscr .nodelay ( 1 ) stdscr .timeout ( SPEED ) sh , sw = stdscr .getmaxyx () box = [[ 3 , 3 ] , [sh - 3 , sw - 3 ]] snake_init_posiiton=[sw//4,sh//2] head=[sw//4,sh//2 ] body=[ [sw // 4- 1 , sh // 2 ] , [sw // 4- 2 , sh // 2]] tail=[sw // 4- 2 , sh // 2] food=[sw//2,sh//2 ] score="0" direction="RIGHT" flag="GAME OVER!" while True: stdscr .clear () for b in box : stdscr .addch (b[ 0 ], b[ 1 ], '#' ) stdscr .addstr ( 0 , 5 ,"Score:"+score) stdscr .addstr ( 0

点击这里,进行内容创作

创作工场 免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!

上一篇 描写Ai的伟大! 下一篇 外地户口外地残疾证,在昆明市居住可以办理残疾爱心卡吗