用值的均匀分布填充CSV

时间:2019-07-04 14:03:27

标签: python performance csv

我想编写一个python脚本,以基于列填充CSV文件,并且每一列都有只能在该列中的字符串预设列表。

示例

对于“名称”列,唯一可能的值是“安德鲁”,“詹姆斯”,“史蒂夫”,“查理”等,并且以类似的方式,其他各列都有可能值的预设列表。

我想尽可能以最均匀的分布填充CSV,以便使行具有不同的列值组合。

问题:

  1. 我应该使用列表并随机选择值吗?
  2. 会导致裁员吗?
  3. 还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

以下内容将帮助您入门:

import csv
import random

with open('output.csv', 'w', newline='') as f_output:
    csv_output = csv.writer(f_output)
    csv_output.writerow(["Name", "Age"])

    names = ["Andrew", "Steve", "Charlie"]

    for _ in range(10):     # Create 10 entries
        name = random.choice(names)
        age = random.randint(20, 50)

        csv_output.writerow([name, age])

为您提供示例输出,例如:

Name,Age
Andrew,50
Steve,37
Charlie,34
Andrew,47
Andrew,28
Andrew,27
Charlie,29
Charlie,49
Steve,42
Charlie,38