python有什么游戏可以玩玩?

Python08

python有什么游戏可以玩玩?,第1张

ant 蚂蚁2. bagels 百吉饼另外贪吃蛇,吃豆子都是可以的,直接代码就可以玩。

Python包括随您的安装一起分发的大量标准库。标准库有一个称为Turtle的模块,这是一种向普通人介绍python编程的流行方法。今天介绍的所有游戏都是使用Python及其Turtle模块实现的。

每个游戏都完全独立于其他游戏,不试一试 您永远都不知道最喜欢哪种游戏。

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

贪吃蛇

贪吃蛇 -经典街机游戏。使用箭头键导航并吃绿色食品。每次食用食物,蛇就会长出一段。避免自己进食或出界!

豆子

吃豆子 –经典街机游戏。使用箭头键导航并吃掉所有白色食物。提防漫游迷宫的红色幽灵。

Flappy

Flappy-bird启发游戏。单击屏幕拍打翅膀。当您飞越屏幕时,请当心黑乌鸦。

加农炮

大炮-射击运动。单击屏幕发射您的炮弹。炮弹在其路径中弹出蓝色气球。弹出所有气球,然后才能越过屏幕。

#五子棋

#!/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()

安装pygame并创建能左右移动的飞船

安装pygame

本人电脑是windows 10、python3.6,pygame下载地址:传送门

请自行下载对应python版本的pygame

运行以下命令

$ pip install wheel

$ pip install pygame‑1.9.3‑cp36‑cp36m‑win_amd64.whl

1

2

1

2

创建Pygame窗口及响应用户输入

新建一个文件夹alien_invasion,并在文件夹中新建alien_invasion.py文件,输入如下代码。