Python中生成随机整数的利器:numpy.random.randint()函数详解

682

在数据科学和机器学习领域,生成随机数是常见的需求之一。Python的NumPy库提供了强大的工具来生成各种类型的随机数。本文将详细介绍numpy.random.randint()函数,该函数可以生成指定范围内的随机整数,并支持生成一维或多维数组。通过本文,读者将了解如何灵活使用numpy.random.randint()函数,以满足不同的编程需求。

可实现功能:

  • 1.随机生成一个整数。

  • 2.随机生成任意范围内的一个整数。

  • 3.随机生成指定长度的整数组

  • 4.随机生成指定长度的任意范围的整数组

  • 5.随机生成指定长度的多维整数组

  • 6.随机生成指定长度的任意范围的多维整数组

np.random.randint() 根据参数中所指定的范围生成随机 整数。

numpy.random.randint(low, high=None, size=None, dtype=int)

参数

  • 1. low: int 生成的数值的最小值(包含),默认为0,可省略。

  • 2. high: int 生成的数值的最打值(不包含)。

  • 3. size: int or tuple of ints 随机数的尺寸, 默认是返回单个,输入 10 返回 10个,输入 (3,4) 返回的是一个 3*4 的二维数组。(可选)。

  • 4. dtype:想要输出的结果类型。默认值为int。(可选,一般用不上)。

一、基础用法

Python中生成随机整数的利器:numpy.random.randint()函数详解

可执行代码

import pandas as pd
import numpy as np

# 随机返回 0-9 的 一个整数,可的省略0
np.random.randint(10)
# 随机返回 10-20 的 一个整数
np.random.randint(10,21)

# 随机返回范围在 0-9 的,长度为 10 的数组
np.random.randint(10,size=10)
# 随机返回范围在 10-20 的,长度为 10 的数组
np.random.randint(10,21,size=10)

# 随机返回范围在 0-9 的 3*4 随机数组
np.random.randint(10,size=(3,4))
# 随机返回范围在 10-20 的 3*4 随机数组
np.random.randint(10,21,size=(3,4))

二、高级用法

Python中生成随机整数的利器:numpy.random.randint()函数详解

可执行代码

import pandas as pd
import numpy as np

# 高级用法
# 可单独指定每个元素的最大值
# 生成 3 个最大值分别为 3,5,7 的值,最大值不超过 10 的值
# 如果不指定 size 默认根据第一个和第二个参数的长度来决定生成结果的长度,此处返回的 array 长度是3
np.random.randint([3, 5, 7], 10)

# 高级用法
# 生成 3 个最小值为1,最大值分别不超过 3,5,10 的值
np.random.randint(1, [3, 5, 10])
# 高级用法
# 生成 3 个最小值为1,最大值分别不超过 3,5,10 的值
np.random.randint([1, 2, 3,], [4, 5, 10])

# 高级用法
# 生成 4*2 数组 最小值为[1, 3, 5, 7],最大值 第一行不超过10,第二行不超过 20
# 注意第二个参数里面的每个元素都要用[],因为它控制的是一整行
np.random.randint([1, 3, 5, 7], [[10], [20]])

# 高级用法
# 指定返回数据的 dtype
# 随机返回 10-20 的 长度为 10  dtype=np.uint8 的数组
np.random.randint(10, 21, size=10, dtype=np.uint8)

总结

numpy.random.randint()函数是NumPy库中一个非常实用的工具,用于生成指定范围内的随机整数。通过本文的介绍,读者不仅了解了该函数的基本用法,还掌握了如何生成一维和多维随机整数数组。无论是在数据预处理、模拟实验还是算法测试中,numpy.random.randint()函数都能提供强大的支持。希望本文能帮助读者更好地理解和应用这一功能强大的函数。

Python 随机整数
THE END
蜜芽
故事不长,也不难讲,四字概括,毫无意义。

相关推荐

Python yield 用法大全:轻松掌握生成器与迭代器设计
在Python中,yield关键字是构建生成器的核心工具,它通过状态保存机制实现了高效的内存管理和惰性计算。与传统的迭代器实现相比,yield能将迭代器设计从复杂的类定义简化为直...
2025-09-15 编程技术
549

基于Python的旅游数据分析可视化系统【2026最新】
本研究成功开发了基于Python+Django+Vue+MySQL的旅游数据分析可视化系统,实现了从数据采集到可视化展示的全流程管理。系统采用前后端分离架构,前端通过Vue框架构建响应式界...
2025-09-13 编程技术
575

手把手教你用Python读取txt文件:从基础到实战的完整教程
Python作为数据处理的利器,文件读写是其基础核心功能。掌握txt文件读取不仅能处理日志、配置文件等常见场景,更是理解Python文件I/O的基石。本文ZHANID工具网将从基础语法到...
2025-09-12 编程技术
546

Python Flask 入门指南:从零开始搭建你的第一个 Web 应用
Flask作为 Python 中最轻量级且灵活的 Web 框架之一,特别适合初学者快速上手 Web 应用开发。本文将带你一步步了解如何在本地环境中安装 Flask、创建一个简单的 Web 应用,并...
2025-09-11 编程技术
534

Python 如何调用 MediaPipe?详细安装与使用指南
MediaPipe 是 Google 开发的跨平台机器学习框架,支持实时处理视觉、音频和文本数据。本文脚本之家将系统讲解 Python 环境下 MediaPipe 的安装、配置及核心功能调用方法,涵盖...
2025-09-10 编程技术
577

基于Python开发一个利率计算器的思路及示例代码
利率计算是金融领域的基础需求,涵盖贷款利息、存款收益、投资回报等场景。传统计算依赖手工公式或Excel表格,存在效率低、易出错等问题。Python凭借其简洁的语法和强大的数学...
2025-09-09 编程技术
517