Python random模块

Python random模块知识点详解

Python random 模块完全指南

专为编程初学者设计的随机数生成知识汇总

🎲

random.random()

这是什么?

生成一个0到1之间的随机小数(包含0,但不包含1)。就像在0和1之间扔飞镖,落在任意位置的概率都一样。

怎么用?

import random rand_num = random.random() print(rand_num) # 输出类似 0.5488135039273248

应用场景

当你需要简单的随机性时使用,比如模拟抛硬币(小于0.5算正面)、随机选择是否执行某个操作等。

重要程度: ★★★★★(最基础)

🎯

random.randint(a, b)

这是什么?

生成一个整数N,a ≤ N ≤ b(包含两端的a和b)。就像掷一个有a到b面的骰子。

怎么用?

import random dice_roll = random.randint(1, 6) # 模拟骰子 print(dice_roll) # 输出 1到6之间的整数

应用场景

游戏开发(骰子、抽奖)、随机选择数组索引、生成指定范围的随机整数。

重要程度: ★★★★★(最常用)

🔢

random.choice(seq)

这是什么?

从一个非空序列(如列表、元组、字符串)中随机选择一个元素。就像从一个盒子里随机摸一个球出来。

怎么用?

import random colors = [‘红’, ‘绿’, ‘蓝’, ‘黄’] chosen = random.choice(colors) print(chosen) # 随机输出列表中的一种颜色

应用场景

随机抽奖、从多个选项中选择、生成随机名称或单词、AI的随机决策等。

重要程度: ★★★★★

🔀

random.shuffle(seq)

这是什么?

将序列中的元素随机重新排列(打乱顺序)。就像洗扑克牌一样。

怎么用?

import random cards = [‘A’, ‘2’, ‘3’, ‘4’, ‘5’, ‘J’, ‘Q’, ‘K’] random.shuffle(cards) print(cards) # 输出类似 [‘4’, ‘A’, ‘J’, ‘2’, …]

注意事项

这个方法会直接修改原始列表,而不是返回一个新列表。原始顺序会丢失!

重要程度: ★★★★☆

📊

random.uniform(a, b)

这是什么?

生成一个指定范围内的随机浮点数(小数),a ≤ N ≤ b(包含两端)。

怎么用?

import random temperature = random.uniform(35.5, 42.0) print(f”体温: {temperature:.1f}°C”) # 输出类似 体温: 38.3°C

与 randint 的区别

randint() 生成整数,uniform() 生成小数。uniform() 的精度更高,适用于需要更精细随机数的场景。

重要程度: ★★★☆☆

🎭

random.sample(population, k)

这是什么?

从一个序列中随机选择k个不重复的元素。就像抽奖时从抽奖箱中抽出多个不重复的获奖者。

怎么用?

import random students = [‘小明’, ‘小红’, ‘小刚’, ‘小丽’, ‘小华’] winners = random.sample(students, 2) # 选2名不重复的获奖者 print(winners) # 输出类似 [‘小华’, ‘小丽’]

注意事项

k值不能大于序列长度,否则会报错。结果中的元素不会重复。

重要程度: ★★★★☆

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部