Python random模块(获取随机数)常用方法和使用例子

  • Post category:Python

Python random模块 – 获取随机数

介绍

Python中的random模块提供了各种生成随机数和随机选择元素的函数。这个模块的使用非常常见,通过使用random产生随机数来模拟一些事件,测试程序性能等等。

常用方法

1. random.randint(a, b)

该函数返回[a, b]之间的随机整数,包含a和b。

import random

print(random.randint(1, 10)) # 产生 1 到 10 的一个整数型随机数  

2. random.random()

该函数返回[0.0, 1.0)之间的随机浮点数,左闭右开区间。

import random

print(random.random()) # 使用默认的随机数种子,生成一个随机数

3. random.uniform(x, y)

该函数返回[x, y]之间的随机浮点数,包含x和y。

import random

print(random.uniform(3, 10)) # 产生3到10之间的浮点数  

4. random.choice(seq)

该函数从非空序列seq中随机选取一个元素。

import random

print(random.choice([1, 2, 3, 4, 5])) # 随机从列表中选取一个数

使用例子

1. 投骰子游戏

import random

while True:
    user_input = input("按下 Enter 投骰子,Q 退出游戏")
    if user_input.upper() == "Q":
        break
    dice_number = random.randint(1, 6)
    print("骰子结果:" , dice_number)
print("再见!")

该程序模拟了一种投掷骰子的游戏,用户每按一次Enter键就会进行一次新的投掷,程序会通过随机数生成器模拟骰子结果。

2. 猜数字游戏

import random

number = random.randint(1, 10)
while True:
    user_input = input("请猜一个1~10之间的数字:")
    if user_input.isdigit():
        user_input = int(user_input)
        if user_input == number:
            print("恭喜你猜对了!")
            break
        else:
            if user_input > number:
                print("太大了,再试试")
            else:
                print("太小了,再试试")
    else:
        print("输入有误,请输入一个数字")

该程序模拟了一个猜数字的游戏,每次运行程序会生成一个1~10之间的随机数,用户需要通过输入数字来猜测这个随机数。程序会判断用户的输入,给出“太大了”,“太小了”或者“恭喜你猜对了”等提示。