Python生成指定范围内随机数的方法详解

竹里
竹里
发布时间:2026-10-14 | 4人浏览过
原创

本文介绍Python中生成指定范围内随机数的两种常用方法:random.randint用于生成整数,random.uniform用于生成浮点数。通过具体代码示例展示参数用法及边界处理,并扩展介绍随机字符、列表洗牌等random模块的其他实用功能,帮助开发者快速掌握随机数生成技巧。

Python生成指定范围随机数的基本方法

在Python中,若需生成指定范围内的随机数,主要依赖random模块提供的函数。

实现该功能的核心函数包括random.uniform(),它专门用于生成指定区间内的随机浮点数。

具体而言,random.uniform(a, b)函数会生成一个介于a和b之间的随机浮点数。例如,调用random.uniform(10, 20)即可生成10到20之间的随机浮点值。

若需生成整数,可使用random.randint(a, b)。该函数要求参数a为下限,b为上限,生成的随机整数n满足条件a <= n <= b。

生成随机整数的代码示例

以下是使用random.randint生成随机整数的代码示例:


print random.randint(12, 20)  # 生成的随机数 n: 12 <= n <= 20
print random.randint(20, 20)  # 结果永远是20     
# print random.randint(20, 10)  # 该语句是错误的。下限必须小于上限

生成随机浮点数的逻辑与示例

对于random.uniform(a, b),其作用是生成指定范围内的随机浮点数,其中a和b分别代表上限和下限(顺序不影响结果范围,但影响大小关系判断)。若a大于b,生成的随机数n满足a >= n >= b;若a小于b,则满足b >= n >= a。

以下是使用random.uniform生成随机浮点数的代码示例:


print random.uniform(10, 20)
print random.uniform(20, 10)
# 18.7356606526
# 12.5798298022

random模块的其他随机数应用

除了基础的随机数生成,Python的random模块还提供了更多扩展功能,适用于不同场景的需求。

以下代码展示了Python 3中random模块的多种随机数生成方式,包括整数、浮点数、字符及列表操作:


import random
#随机整数
import string

print(random.randint(0,99))
#随机选取0到100间的偶数
print(random.randrange(0, 101, 2))
#随机浮点数
print(random.random())
print(random.uniform(1, 10))
#随机字符
print(random.choice('abcdefg&#%^*f'))
#多个字符中选取特定数量的字符
print(random.sample('abcdefghij',3))
#多个字符中选取特定数量的字符组成新字符串
# print(string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).replace(" ",""))
#随机选取字符串
print(random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] ))
#洗牌
items = [1, 2, 3, 4, 5, 6]
random.shuffle(items)
print("洗牌:", items)
#从指定序列中随机获取k个元素作为一个片段返回,不会改变原有序列
list = []
list = random.sample(items,2)
print(list)

以上内容涵盖了Python生成指定范围内随机数的基本方法。如需了解更多相关技巧,建议参考本站其他技术文章。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表