购房电话:1
80
⒏9⒏28
47
0
好玩的小游戏代码
这里有一个简单的贪吃蛇游戏代码,使用 Python 和 Pygame 库编写:
```python
import pygame
import sys
import random
初始化 Pygame
pygame.init()
设置屏幕大小和标题
screen_width = 640
screen_height = 480
screen = pygame.display.set_mode((screen_width, screen_height))
pygame.display.set_caption("贪吃蛇")
定义颜色
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
设置蛇和食物的大小
snake_size = 20
food_size = 20
初始化蛇的位置和速度
snake_pos = [[100, 50], [90, 50], [80, 50]]
snake_speed = [snake_size, 0]
初始化食物的位置
food_pos = [random.randrange(1, (screen_width//food_size)) * food_size, random.randrange(1, (screen_height//food_size)) * food_size]
food_spawn = True
设置游戏速度
clock = pygame.time.Clock()
speed = 10
游戏主循环
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
获取键盘输入
keys = pygame.key.get_pressed()
根据键盘输入移动蛇
if keys[pygame.K_UP] and snake_pos[0][1] > 0:
snake_pos.insert(0, [snake_pos[0][0], snake_pos[0][1] - snake_speed[1]])
if keys[pygame.K_DOWN] and snake_pos[0][1] < screen_height - snake_size:
snake_pos.insert(0, [snake_pos[0][0], snake_pos[0][1] + snake_speed[1]])
if keys[pygame.K_LEFT] and snake_pos[0][0] > 0:
snake_pos.insert(0, [snake_pos[0][0] - snake_speed[0], snake_pos[0][1]])
if keys[pygame.K_RIGHT] and snake_pos[0][0] < screen_width - snake_size:
snake_pos.insert(0, [snake_pos[0][0] + snake_speed[0], snake_pos[0][1]])
检查蛇是否吃到食物
if snake_pos[0] == food_pos:
food_spawn = False
else:
snake_pos.pop()
生成新的食物
if not food_spawn:
food_pos = [random.randrange(1, (screen_width//food_size)) * food_size, random.randrange(1, (screen_height//food_size)) * food_size]
food_spawn = True
绘制屏幕
screen.fill(black)
for pos in snake_pos:
pygame.draw.rect(screen, white, pygame.Rect(pos[0], pos[1], snake_size, snake_size))
pygame.draw.rect(screen, red, pygame.Rect(food_pos[0], food_pos[1], food_size, food_size))
更新屏幕
pygame.display.flip()
控制游戏速度
clock.tick(speed)
```
将上述代码保存为一个名为 "snake_game.py" 的文件,然后使用 Python 解释器运行它。你将看到一个简单的贪吃蛇游戏。你可以尝试修改代码以增加更多功能,例如不同的颜色、难度设置等。

好玩的小游戏代码大全
以下是一些有趣的小游戏代码,你可以根据自己的需求进行修改和扩展:
1. 猜数字游戏(Python)
```python
import random
def guess_number():
num = random.randint(1, 100)
attempts = 0
while True:
try:
guess = int(input("猜一个1到100之间的数字:"))
attempts += 1
if guess < num:
print("太小了!")
elif guess > num:
print("太大了!")
else:
print(f"恭喜你,猜对了!数字是{num}。你用了{attempts}次尝试。")
break
except ValueError:
print("请输入一个有效的数字。")
guess_number()
```
2. 贪吃蛇游戏(Python)
```python
import curses
def main(stdscr):
curses.curs_set(0)
sh, sw = stdscr.getmaxyx()
w = curses.newwin(sh, sw, 0, 0)
w.keypad(1)
w.timeout(100)
snk_x = sw//4
snk_y = sh//2
snake = [
[snk_y, snk_x],
[snk_y, snk_x-1],
[snk_y, snk_x-2]
]
food = [sh//2, sw//2]
w.addch(int(food[0]), int(food[1]), curses.ACS_PI)
while True:
next_key = w.getch()
key = key if next_key == -1 else next_key
if snake[0][0] in [0, sh] or snake[0][1] in [0, sw] or snake[0] in snake[1:]:
break
new_head = [snake[0][0], snake[0][1]]
if key == curses.KEY_DOWN:
new_head[0] += 1
if key == curses.KEY_UP:
new_head[0] -= 1
if key == curses.KEY_LEFT:
new_head[1] -= 1
if key == curses.KEY_RIGHT:
new_head[1] += 1
snake.insert(0, list(new_head))
if snake[0] == food:
food = None
while food is None:
nf = [
sh//2,
sw//2 + (random.randint(1, sw-1))
]
food = nf if nf not in snake else None
w.addch(food[0], food[1], curses.ACS_PI)
else:
tail = snake.pop()
w.addch(tail[0], tail[1], " ")
w.addch(snake[0][0], snake[0][1], "")
curses.wrapper(main)
```
3. 井字棋游戏(Python)
```python
def print_board(board):
for row in board:
print(" | ".join(row))
print("-" * 9)
def check_win(board, player):
for row in board:
if all(spot == player for spot in row):
return True
for col in range(3):
if all(board[row][col] == player for row in range(3)):
return True
if all(board[i][i] == player for i in range(3)) or all(board[i][2-i] == player for i in range(3)):
return True
return False
def tictactoe():
board = [[" " for _ in range(3)] for _ in range(3)]
players = ["X", "O"]
current_player = 0
while True:
print_board(board)
row = int(input(f"玩家{current_player + 1},请输入行(0-2):"))
col = int(input(f"玩家{current_player + 1},请输入列(0-2):"))
if board[row][col] != " ":
print("该位置已有棋子,请重新输入。")
continue
board[row][col] = players[current_player]
if check_win(board, players[current_player]):
print_board(board)
print(f"玩家{current_player + 1}获胜!")
break
else:
current_player = 1 - current_player
tictactoe()
```
4. 扫雷游戏(Python)
```python
import random
def create_board(size):
return [[0 for _ in range(size)] for _ in range(size)]
def calculate_mines(board, mines):
for i in range(mines):
row = random.randint(0, len(board) - 1)
col = random.randint(0, len(board[0]) - 1)
board[row][col] = -1
def print_board(board):
for row in board:
print(" ".join(str(spot) for spot in row))
def is_valid(board, row, col):
return 0 <= row < len(board) and 0 <= col < len(board[0]) and board[row][col] != -1
def click(board, row, col):
if board[row][col] == -1:
return False
board[row][col] = 0
mines_count = 0
for i in range(row - 1, row + 2):
for j in range(col - 1, col + 2):
if not is_valid(board, i, j):
continue
if board[i][j] == -1:
mines_count += 1
return mines_count
def main():
size = 10
board = create_board(size)
mines = 10
calculate_mines(board, mines)
current_player = 0
while True:
print_board(board)
row = int(input(f"玩家{current_player + 1},请输入行(0-9):"))
col = int(input(f"玩家{current_player + 1},请输入列(0-9):"))
if board[row][col] == -1:
print("该位置有地雷,请重新输入。")
continue
mines_count = click(board, row, col)
if mines_count > 0:
print(f"该位置周围有{mines_count}个地雷。")
else:
board[row][col] = 0
if is_valid(board, row, col):
board[row][col] = 1
if check_win(board, 1):
print_board(board)
print("玩家获胜!")
break
else:
print("该位置无效,请重新输入。")
current_player = 1 - current_player
if __name__ == "__main__":
main()
```
这些代码只是简单的示例,你可以根据自己的需求进行修改和扩展,例如增加游戏难度、美化界面、增加音效等。
打折V信:1808
84
70

关注公众号获取实时房价信息

海南房产咨询师
















![2026年临高房价又涨了,碧桂园·金沙滩[第二期]购房的赶紧上车!](/uploadfile/2026/0117/202601171153555839.jpg)





