python - 我可以从 Python 中的 csv 随机打印行吗?
问题描述
我正在尝试从 csv 随机打印行。
假设 csv 有以下 10 行 -
1,One
2,Two
3,Three
4,Four
5,Five
6,Six
7,Seven
8,Eight
9,Nine
10,Ten
如果我编写如下代码,它将按照与 CSV 中相同的顺序将每一行打印为列表
import csv
with open("MyCSV.csv") as f:
reader = csv.reader(f)
for row_num, row in enumerate(reader):
print(row)
相反,我希望它是随机的。
它现在只是一个印刷品。稍后我会将每一行作为列表传递给函数。
解决方案
import csv
import random
csv_elems = []
with open("MyCSV.csv") as f:
reader = csv.reader(f)
for row_num, row in enumerate(reader):
csv_elems.append(row)
random.shuffle(csv_elems)
print(csv_elems[0])
如您所见,我只是在打印第一个元素,您可以遍历列表,继续洗牌和打印
推荐阅读
- sql - 如何在两个表之间进行完全连接
- aws-glue - 使用 AWS Glue 在单独的元素中使用列名和值解析 xml
- java - 使用实现的类调用接口参数方法时出错
- azure - 如何将文件复制到本地`ansible_connection`中的远程?
- python - 当 --archive 到纱线集群时,conda 如何处理 cv2 的 .so
- jenkins - 在 jenkins 中从 shell 脚本设置环境变量
- linux - PgAdmin4 开始为空
- angular - Angular2:多个日期选择器
- joomla - 无法访问 JCE 编辑器中的后端/配置
- angular - Angular 7 使用 location.back() 和浏览器返回 btn 不会保留状态