进行计算
本课属于 Coddy Pygame 学习旅程的“游戏窗口中的 Python”单元。第 7 课,共 33 课。
Python 可以进行算术运算:+ 用于加法,- 用于减法,* 用于乘法,/ 用于除法。变量也可以用于求和:
star_x = moon_x + 90
star_y = moon_y - 40Python 会先计算右侧的表达式,然后存储结果。如果 moon_x = 160,star_x 就会变成 250。
求和表达式也可以直接放在需要数字的位置:(moon_x + 90, moon_y - 40) 表示一个中心点,它在月亮右侧 90 像素、上方 40 像素处。移动月亮,星星也会跟着移动。
Python 遵循数学运算顺序:先计算 * 和 /,再计算 + 和 -。2 + 3 * 4 的结果是 14。括号可以改变运算顺序:(2 + 3) * 4 的结果是 20。
挑战
简单根据月亮的变量,绘制两颗白色 (255, 255, 255) 星星,半径为 4。
- 在
(moon_x + 90, moon_y - 40)处绘制一颗。 - 在
(moon_x * 3, moon_y + 60)处绘制一颗。
按“开始”:月亮旁边会出现两颗星星,位置分别为 (250, 80) 和 (480, 180)。然后按“检查”。
亲手试试
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# 在这里设置游戏内容,放在游戏循环之前。
moon_x = 160
moon_y = 120
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 在这里修改内容,每帧执行一次。
screen.fill((20, 24, 48))
# 填充背景后,在这里绘制。
pygame.draw.circle(screen, (240, 230, 160), (moon_x, moon_y), 50)
pygame.display.flip()
clock.tick(60)
pygame.quit()
游戏窗口中的 Python中的所有课
自己练习: Pygame 在线编辑器