diff --git a/apple.png b/apple.png
new file mode 100644
index 0000000..e58cb8f
Binary files /dev/null and b/apple.png differ
diff --git a/bg.png b/bg.png
new file mode 100644
index 0000000..a085237
Binary files /dev/null and b/bg.png differ
diff --git a/body.png b/body.png
new file mode 100644
index 0000000..a254609
Binary files /dev/null and b/body.png differ
diff --git a/down.png b/down.png
new file mode 100644
index 0000000..41d1525
Binary files /dev/null and b/down.png differ
diff --git a/left.png b/left.png
new file mode 100644
index 0000000..365dffe
Binary files /dev/null and b/left.png differ
diff --git a/neuropol.ttf b/neuropol.ttf
new file mode 100644
index 0000000..ddefb40
Binary files /dev/null and b/neuropol.ttf differ
diff --git a/right.png b/right.png
new file mode 100644
index 0000000..e77639a
Binary files /dev/null and b/right.png differ
diff --git a/snake.py b/snake.py
new file mode 100644
index 0000000..19f59a3
--- /dev/null
+++ b/snake.py
@@ -0,0 +1,77 @@
+import pygame
+import random
+from pygame import locals
+
+# 初始化pygame,为使用硬件做准备
+pygame.init()
+
+# 创建一个窗口
+screen = pygame.display.set_mode((660, 480))
+FPSCLOCK = pygame.time.Clock()  # pygame时钟,控制游戏速度(帧数)
+
+# 背景
+background = pygame.image.load('bg.png')
+right = pygame.image.load('right.png')      # 头 朝右
+food = pygame.image.load('apple.png')       # 食物 苹果
+body = pygame.image.load('body.png')        # 身体
+left = pygame.image.load('left.png')        # 头 朝左
+up = pygame.image.load('up.png')            # 头 朝上
+down = pygame.image.load('down.png')        # 头 朝下
+
+x, y = 240, 120 
+app_x = 300
+app_y = 300
+position = [(180, 90), (180, 120), (210, 120), (x, y)]
+
+setheading = "right"
+snake_head = right
+
+while True:
+    for event in pygame.event.get():
+        if event.type == locals.QUIT:
+            # 接收到退出事件后退出程序
+            exit()
+        if event.type == locals.KEYDOWN:
+            if event.key == locals.K_RIGHT and setheading != "left":
+                setheading = 'right'
+                snake_head = right
+            if event.key == locals.K_LEFT and setheading != "right":
+                setheading = 'left'
+                snake_head = left
+            if event.key == locals.K_UP and setheading != "down":
+                setheading = 'up'
+                snake_head = up
+            if event.key == locals.K_DOWN and setheading != "up":
+                setheading = 'down'
+                snake_head = down
+
+    # 设置贪吃蛇的头部坐标
+    if setheading == "right":
+        x += 30
+    elif setheading == "left":
+        x -= 30
+    elif setheading == "up":
+        y -= 30
+    else:
+        y += 30
+    position.append((x, y))
+    if app_x==x and app_y==y:
+        app_x=random.randint(0,22)
+        app_y=random.randint(0,16)
+        app_x=app_x*30-30
+        app_y=app_y*30-30
+    else:
+        position.pop(0)
+    # 将背景图画上去
+    screen.blit(background, (0, 0))
+    # 将贪吃蛇的头画上去
+    screen.blit(snake_head, position[-1])
+    # 将贪吃蛇的身体画上去
+    for i in range(len(position)-1):
+        screen.blit(body, position[i])
+
+    # 将果实画上去
+    screen.blit(food, (app_x, app_y))
+    # 刷新画面
+    pygame.display.update()
+    FPSCLOCK.tick(3)
\ No newline at end of file
diff --git a/up.png b/up.png
new file mode 100644
index 0000000..44f2e28
Binary files /dev/null and b/up.png differ