4 locust 参数化2 - csv 文件处理

1 csv 根据传入列名生成 list or queue

import os
import csv
import queue


# csv 文件中的指定列生成一个 queue
# csv 文件位置 '/csvfile/mobile-test1.csvfile'
def csv_to_queue(file_path, params_name):
    # 空队列
    my_queue = queue.Queue()

    # 工程目录
    project_path = os.path.dirname(os.path.dirname(__file__))
    print(project_path)

    # 加入
    with open(project_path + file_path, 'r', encoding='utf-8') as f:
        reader = csv.DictReader(f, delimiter=',')   # delimiter 参数指定分隔符
        for row in reader:
            # 参数入队列
            my_queue.put(row[params_name])
    # 打印
    # print(my_queue.queue)
    # print(my_queue.__sizeof__())
    return my_queue


# csv 文件中的指定列生成一个 list
# csv 文件位置 '/csvfile/mobile-test1.csvfile'
def csv_to_list(file_path, params_name):
    # 空列表
    my_list = []

    # 工程目录
    project_path = os.path.dirname(os.path.dirname(__file__))
    print(project_path)
    # 加入
    with open(project_path + file_path, 'r', encoding='utf-8') as f:
        reader = csv.DictReader(f, delimiter=',')   # delimiter 参数指定分隔符
        for row in reader:
            # 参数入列表
            my_list.append(row[params_name])
    # 打印
    # print(my_queue.queue)
    # print(my_queue.__sizeof__())
    return my_list


if __name__ == '__main__':
    q = csv_to_queue('/csvfile/report-test1.csv', 'uid')
    while(q.empty() == False):
        print(q.get())
    l = csv_to_list('/csvfile/report-test1.csv', 'uid')
    print(l)

 

posted @ 2021-01-26 15:03  栗子测试开发  阅读(460)  评论(0)    收藏  举报