random.shuffle()函数随机打乱数据

【1】引言

之前学习了一些random系列的简单用法,比如random.gauss()函数和numpy.random.normal()函数生成正态分布随机数,这些数据都是随机生成的,有时候,如果数据本身有规律,我们想让它们被随机读取,这时候就会用到random.shuffle()函数。

【2】random.shuffle()函数

random.shuffle()函数的使用比较简单,直接给出代码:

python 复制代码
import random

my_list = [1, 2, 3, 4, 5]
# 原地打乱列表
random.shuffle(my_list)
# 输出随机打乱后的列表
print(my_list)

代码运行后的效果为:

这是面对一维数据,如果是二维数据,可以只在每一行内部打乱,也可以行列都打乱。

python 复制代码
import random

# 打乱行
my_list = [[1, 2, 3],
           [3, 4, 5],
           [3,2,1]]
# 打乱行,行内部保持不变
random.shuffle(my_list)
# 输出随机打乱后的列表
print(my_list)

# 行内打乱列
my_listi = [[1, 2, 3],
           [3, 4, 5],
           [3,2,1]]
# 仅打乱每一行内部元素
for inlist in my_listi:
    random.shuffle(inlist)
print(my_listi)

# 先打乱行,后打乱行内列
my_listj = [[1, 2, 3],
           [3, 4, 5],
           [3,2,1]]
# 先打乱行
random.shuffle(my_listj)
# 再打乱列元素
for inlist in my_listj:
    random.shuffle(inlist)
print(my_listj)

代码运行后的效果为:

【3】总结

学习了random.shuffle()函数随机打乱数据的基本技巧。

相关推荐
YYuCChi12 分钟前
代码随想录算法训练营第三十七天 | 52.携带研究材料(卡码网)、518.零钱兑换||、377.组合总和IV、57.爬楼梯(卡码网)
算法·动态规划
南极星100512 分钟前
蓝桥杯JAVA--启蒙之路(十)class版本 模块
java·开发语言
baidu_2474386116 分钟前
Android ViewModel定时任务
android·开发语言·javascript
Dev7z29 分钟前
基于 MATLAB 的铣削切削力建模与仿真
开发语言·matlab
不能隔夜的咖喱35 分钟前
牛客网刷题(2)
java·开发语言·算法
VT.馒头35 分钟前
【力扣】2721. 并行执行异步函数
前端·javascript·算法·leetcode·typescript
前端玖耀里41 分钟前
如何使用python的boto库和SES发送电子邮件?
python
serve the people41 分钟前
python环境搭建 (十二) pydantic和pydantic-settings类型验证与解析
java·网络·python
小天源42 分钟前
Error 1053 Error 1067 服务“启动后立即停止” Java / Python 程序无法后台运行 windows nssm注册器下载与报错处理
开发语言·windows·python·nssm·error 1053·error 1067
进击的小头1 小时前
实战案例:51单片机低功耗场景下的简易滤波实现
c语言·单片机·算法·51单片机