Python 是一款十分流行的編程語言,其強大的功能和易學易用的特點使其在游戲開發和數據分析等領域有著廣泛的應用。其中,用 Python 來畫大餅游戲,是一個十分有趣的編程項目。下面,我們就來看看如何使用 Python 畫出一個簡單的大餅游戲。
# 導入必要的庫 import turtle import random # 設置窗口 win = turtle.Screen() win.title("Big Pie Game") win.bgcolor("white") win.setup(width=600, height=600) # 畫布 canvas = turtle.Turtle() canvas.speed(0) canvas.shape("circle") canvas.color("black") canvas.penup() canvas.goto(0, 260) canvas.direction = "stop" # 小球 ball = turtle.Turtle() ball.speed(40) ball.shape("circle") ball.color("red") ball.penup() ball.goto(0, -250) ball.dy = 0 ball.dx = random.randint(-3, 3) * 5 # 分數計數器 score = 0 score_display = turtle.Turtle() score_display.speed(0) score_display.color("black") score_display.penup() score_display.hideturtle() score_display.goto(0, 260) # 定義函數 def move_left(): canvas.direction = "left" def move_right(): canvas.direction = "right" # 移動函數 def move(): if canvas.direction == "left": x = canvas.xcor() x -= 10 if x< -280: x = -280 canvas.setx(x) if canvas.direction == "right": x = canvas.xcor() x += 10 if x >280: x = 280 canvas.setx(x) ball.dy -= 0.1 ball.sety(ball.ycor() + ball.dy) ball.setx(ball.xcor() + ball.dx) if ball.ycor()< -280: ball.dy *= -1 if ball.xcor() >280 or ball.xcor()< -280: ball.dx *= -1 if ball.ycor()< -280: ball.goto(0, -250) ball.dy = 0 ball.dx = random.randint(-3, 3) * 5 global score score += 1 score_display.clear() score_display.write("Score: {}".format(score), align="center", font=("Courier", 24, "normal")) if ball.ycor()< -250 and ball.xcor()< canvas.xcor() + 50 and ball.xcor() >canvas.xcor() - 50: ball.dy *= -1 ball.dx += random.randint(-3, 3) * 5 # 綁定按鍵 win.listen() win.onkeypress(move_left, "Left") win.onkeypress(move_right, "Right") # 開始游戲主循環 while True: win.update() move()
以上就是使用 Python 畫大餅游戲的代碼,我們使用 turtle 庫來控制小球的運動軌跡和畫布的移動。通過鍵盤事件來控制畫布的運動,如果小球觸碰到畫布底部,則得分加一,并重新隨機生成小球位置和速度。如果小球和畫布重疊,則小球速度反向,并隨機生成橫向速度。
通過這個簡單的項目,我們可以鍛煉編程的能力,更加深入地了解 Python 的語法和功能。如果你也喜歡編程和游戲開發,那就趕快嘗試一下吧!