• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    教你使用一行Python代码玩遍童年的小游戏

    写在前面

    贪吃蛇,吃豆人,迷宫,井字游戏......这些小游戏我相信大家小的时候肯定玩过,或许在某个时段还沉迷过.
    随着年龄的增长,这些小游戏离我们越来越远,但是我相信大家的童心还是一直在的
    今天就分享一个真正可以玩耍的GitHub项目 --- free-python-games

    安装与使用

    python大家都懂的,安装第三方库非常简单

    pip install freegames

    Python

    由于该项目中的所有游戏均是基于Python内置模块Turtle制作,所以没有太多依赖,安装不会有困难

    安装完之后我们可以使用 python -m freegames list 来查看所有的游戏列表

    图1

    贪吃蛇

    现在我们可以使用一行代码启动相关游戏,比如贪吃蛇snake

    python -m freegames.snake

    Python

    复制

    图2

    贪吃蛇的玩法想必不用过多解释了,使用键盘⬆️⬇️⬅️➡️即可操控

    吃豆人

    吃豆人没玩过也应该听过,使用下面的代码可以启动一个类似吃豆人的游戏

    python -m freegames.pacman

    Python

    复制

    图3

    Flappy

    Flappy这个游戏和之前非常火的Flappy bird十分类似

    图4

    只需要更换游戏名即可启动

    python -m freegames.flappy

    Python

    复制

    图5

    这次需要不断点击鼠标来控制绿色小圆点飞行,实测比flappy bird难度要更高一点

    Memory

    Memory翻译过来是记忆,该游戏给出一些宫格,点击每一个小宫格会显示背后藏的数字,但会快速消失,当你成功选中两个相同的数字之后就会显示为拼图,可玩性还是很高的

    python -m freegames.memory

    Python

    复制

    图8

    迷宫

    这个游戏应该就不用介绍了,找出走出迷宫对应的路径即可

    python -m freegames.maze

    Python

    复制

    图7

    Tic Tac Toe

    这个游戏我打赌你一定玩过,单击屏幕即可放置一个X或O,当三个同样的图案在一条直线上就赢了

    python3 -m freegames.tictactoe

    Python

    复制

    图8

    查看源码

    还有更多的游戏这里就不再一一介绍,Turtle我们并不陌生,所以当我们玩游戏时应该思考开发者是怎样实现的。使用下面的代码即可在当前目录下生成对应游戏的源码

    "免费的python游戏将游戏和学习结合在一个灵活的环境中 减少编程等困难主题的压力"

    python3 -m freegames copy snake

    Python

    复制

    执行之后,在当前目录下就多了一个snake.py文件,打开就能查看游戏对应的逻辑

    """Snake, classic arcade game.
    
    Exercises
    
    1. How do you make the snake faster or slower?
    2. How can you make the snake go around the edges?
    3. How would you move the food?
    4. Change the snake to respond to arrow keys.
    
    """
    
    from turtle import *
    from random import randrange
    from freegames import square, vector
    
    food = vector(0, 0)
    snake = [vector(10, 0)]
    aim = vector(0, -10)
    
    def change(x, y):
        "Change snake direction."
        aim.x = x
        aim.y = y
    
    def inside(head):
        "Return True if head inside boundaries."
        return -200  head.x  190 and -200  head.y  190
    
    def move():
        "Move snake forward one segment."
        head = snake[-1].copy()
        head.move(aim)
    
        if not inside(head) or head in snake:
            square(head.x, head.y, 9, 'red')
            update()
            return
    
        snake.append(head)
    
        if head == food:
            print('Snake:', len(snake))
            food.x = randrange(-15, 15) * 10
            food.y = randrange(-15, 15) * 10
        else:
            snake.pop(0)
    
        clear()
    
        for body in snake:
            square(body.x, body.y, 9, 'black')
    
        square(food.x, food.y, 9, 'green')
        update()
        ontimer(move, 100)
    
    setup(420, 420, 370, 0)
    hideturtle()
    tracer(False)
    listen()
    onkey(lambda: change(10, 0), 'Right')
    onkey(lambda: change(-10, 0), 'Left')
    onkey(lambda: change(0, 10), 'Up')
    onkey(lambda: change(0, -10), 'Down')
    move()
    done()

    Python

    现在我们就可以学习源码并进行修改来实现更多的功能与玩法,抓紧试试吧!

    到此这篇关于一行Python代码玩遍童年的小游戏的文章就介绍到这了,更多相关Python童年的小游戏内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • 基于python pygame实现的兔子吃月饼小游戏
    • Python五子棋小游戏实例分享
    • Python贪吃蛇小游戏实例分享
    • 用Python手把手教你实现2048小游戏
    • 童年回忆录之python版4399吃豆豆小游戏
    上一篇:一文搞懂Python Sklearn库使用
    下一篇:手把手教你使用Django + Vue.js 快速构建项目
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    教你使用一行Python代码玩遍童年的小游戏 教你,使用,一行,Python,代码,