Python Snake Game Tutorial – Learn How To Make A Python Snake Game

CWC
5 Min Read

Python snake game is a fun game that will not only teach you how to make a snake game in Python, but will also teach you some important concepts that are used in programming. The Python snake game is an educational game, where you will learn how to code, how to make a snake game, and many other important skills.

Python is a popular programming language that is used to make a variety of games and apps,the  and python snake game is one of the most common. The purpose of this tutorial is to guide you through the making of a python snake game. If you want to make a snake game, then this is the best tutorial that you will need.

Before getting into the making of a python snake game, let’s start by understanding some of the important concepts that are needed. These concepts will help you to understand the game better.

Let’s start with the basics. In this tutorial, we will focus on creating a game that will only have a single snake.

We will also use the pygame library to create a game that is very user-friendly.

Let’s setup as per the required instructions. You will need to install Python and Pygame libraries. In order to run this script, You just need the following 3 modules:

  • Pygame: It is a set of Python modules designed for writing video games.
  • Time: This function is used to count the number of seconds elapsed since the epoch.
  • Random: This function is used to generate random numbers in Python by using random module.
import pygame
import time
import random
pygame.init()
white = (255, 255, 255)
yellow = (255, 255, 102)
black = (0, 0, 0)
red = (213, 50, 80)
green = (0, 255, 0)
blue = (50, 153, 213)
dis_width = 600
dis_height = 400
dis = pygame.display.set_mode((dis_width, dis_height))
pygame.display.set_caption('Snake Game In Python')
clock = pygame.time.Clock()
snake_block = 10
snake_speed = 15
font_style = pygame.font.SysFont("bahnschrift", 25)
score_font = pygame.font.SysFont("comicsansms", 35)
def Your_score(score):
value = score_font.render("Your Score: " + str(score), True, yellow)
dis.blit(value, [0, 0])
def our_snake(snake_block, snake_list):
for x in snake_list:
pygame.draw.rect(dis, black, [x[0], x[1], snake_block,
snake_block])
def message(msg, color):
mesg = font_style.render(msg, True, color)
dis.blit(mesg, [dis_width / 6, dis_height / 3])
def gameLoop():
game_over = False
game_close = False
x1 = dis_width / 2
y1 = dis_height / 2
x1_change = 0
y1_change = 0
snake_List = []
Length_of_snake = 1
foodx = round(random.randrange(0, dis_width - snake_block) / 10.0)
* 10.0
foody = round(random.randrange(0, dis_height - snake_block) /
10.0) * 10.0
while not game_over:
while game_close == True:
dis.fill(blue)
message(
"You Lost! Press 'C' to Play Again or 'Q' To Quit The Game",
red)
Your_score(Length_of_snake - 1)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_q:
game_over = True
game_close = False
if event.key == pygame.K_c:
gameLoop()
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
x1_change = -snake_block
y1_change = 0
elif event.key == pygame.K_RIGHT:
x1_change = snake_block
y1_change = 0
elif event.key == pygame.K_UP:
y1_change = -snake_block
x1_change = 0
elif event.key == pygame.K_DOWN:
y1_change = snake_block
x1_change = 0
if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0: game_close = True x1 += x1_change y1 += y1_change dis.fill(blue) pygame.draw.rect(dis, green, [foodx, foody, snake_block, snake_block]) snake_Head = [] snake_Head.append(x1) snake_Head.append(y1) snake_List.append(snake_Head) if len(snake_List) > Length_of_snake:
del snake_List[0]
for x in snake_List[:-1]:
if x == snake_Head:
game_close = True
our_snake(snake_block, snake_List)
Your_score(Length_of_snake - 1)
pygame.display.update()
if x1 == foodx and y1 == foody:
foodx = round(
random.randrange(0, dis_width - snake_block) / 10.0) * 10.0
foody = round(
random.randrange(0, dis_height - snake_block) / 10.0) * 10.0
Length_of_snake += 1
clock.tick(snake_speed)
pygame.quit()
quit()
gameLoop()

This game is called as python snake game. It is a simple game to play. Here, you have to guide a snake through the maze. You can choose to control the direction of the snake either left or right.

To make the snake move, you have to touch the screen. If the snake touches the left wall, then it will go to the left side. If the snake touches the right wall, then it will go to the right side.

Share This Article
Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *

English
Exit mobile version