4 回答
TA贡献2036条经验 获得超8个赞
这应该有效。您可以lines在代码中重复使用该列表,因为它被打乱了。
import random
with open("tmp.csv", "r") as f:
lines = f.readlines()
random.shuffle(lines)
print(lines)
TA贡献1876条经验 获得超7个赞
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])
如您所见,我只是在打印第一个元素,您可以遍历列表,继续洗牌和打印
TA贡献1784条经验 获得超7个赞
好吧,您可以定义一个列表,将 csv 文件的所有元素附加到其中,然后将其打乱并打印它们,假设此列表的名称是temp
import csv
import random
temp = []
with open("your csv file.csv") as file:
reader = csv.reader(file)
for row_num, row in enumerate(reader):
temp.append(row)
random.shuffle(temp)
for i in range(len(temp)):
print(temp[i])
TA贡献1812条经验 获得超5个赞
为什么最好不要使用 pandas 来处理 csv?
import pandas as pd
data = pd.read_csv("MyCSV.csv")
要获得您正在寻找的样本,只需编写:
data.sample() # print one sample data.sample(5) # to write 5 samples
另外,如果您想将每一行传递给一个函数。 data_after_function = data.appy(function_name) 在函数内部,您可以将行转换为列表list()
希望这可以帮助!
添加回答
举报
