blog.dopana

Back

欢迎回来,游戏设计师! 🎲

如果电子游戏完全是可以预测的,那它就会变得非常无聊。想象一下,如果抛硬币每次都是正面,或者游戏里的怪物永远走一模一样的路线。我们需要 “惊喜”!

今天,我们要教我们的小机器人如何在脑子里掷一个神奇的、隐形的骰子,从而做出随机的选择。

为了做到这一点,我们需要使用 random 模块!

神奇的掷骰子(随机是如何工作的)#

就像我们导入 turtle 海龟库来画画一样,我们可以通过 import random 导入随机库来让代码充满魔力。

graph TD
    Start([开始游戏]) --> Choice["选项: ['石头', '剪刀', '布']"]
    Choice --> Random["random.choice() 摇动魔法骰子"]
    Random --> Result{"摇出了什么?"}
    Result -->|选项 1| Rock["✊ 石头!"]
    Result -->|选项 2| Paper["✋ 布!"]
    Result -->|选项 3| Scissors["✌️ 剪刀!"]

random 库里面,有两个最常用的魔法招式:

1. Choice:从列表中随机挑一个#

如果你有一个装有选项的背包列表,你可以让 Python 从里面随机抽一个出来:

import random

options = ["石头", "剪刀", "布"]
robot_choice = random.choice(options)

print("机器人出的是:" + robot_choice)
python

每次你运行这段代码,小机器人给出的选择都可能会不一样喔!✊ ✋ ✌️

2. Randint:摇出一个数字范围#

如果你想要掷一个标准的 6 面骰子,你需要生成一个 1 到 6 之间的随机整数(数字):

import random

dice_roll = random.randint(1, 6)
print("你掷出了:" + str(dice_roll) + " 点! 🎲")
python

动手试一试! 🎮#

打开你的 Python 编辑器,试着制作一个占卜机器人吧:

import random

fortunes = [
    "你今天会捡到一枚闪闪发光的金币! 🪙",
    "出门要小心地上的小泥坑喔! 🌧️",
    "今天会有一只可爱的小狗朝你摇尾巴! 🐶",
    "你今天会学会一个超级酷的编程技巧! 💻"
]

input("向机器人提出一个 Yes/No 的问题,然后按回车键... ")
print("你的今日运势:" + random.choice(fortunes))
python

多运行几次这个程序,看看你的今日运势会不会发生变化!

下一次,我们将学习 字典(Dictionaries)。它就像是小机器人的秘密通讯录,用来快速查找电话号码和游戏背包里的详细信息。下节课见!

参考资料#