zoukankan      html  css  js  c++  java
  • python--get_data_from_csv_or_txt

    一、从csv文件中获取

    import os
    import csv


    class GetDataFromCsvFile():

    def __init__(self, csv_file, params_list):
    self.__csv_file = csv_file
    self.__params_list = params_list

    def get_data_from_csv(self):
    __test_data_list = []
    if os.path.isfile(self.__csv_file) and isinstance(self.__params_list, list) and len(self.__params_list) != 0:
    with open(self.__csv_file, 'r') as f:
    data_lines = csv.reader(f)
    for data_line in data_lines:
    one_data_dict = dict(zip(self.__params_list, data_line))
    __test_data_list.append(one_data_dict)
    return __test_data_list
    else:
    print('parameters error')
    return None


    if __name__ == '__main__':
    csv_file = 'E:/test.csv'
    params_list = ['a', 'c', 'b', 'e']
    gd = GetDataFromCsvFile(csv_file, params_list)
    result = gd.get_data_from_csv()
    print(result)

    二、从txt中获取

    import os


    class GetDataFromTxtFile:

    def __init__(self, txt_file, params_list):
    self.__txt_file = txt_file
    self.__params_list = params_list

    def get_data_from_txt(self, test_count=None):
    __test_data_list = []
    _result_data_list = []
    if os.path.exists(self.__txt_file) and os.path.isfile(self.__txt_file) and isinstance(self.__params_list,
    list) and len(self.__params_list) != 0:
    total_lines = len(open(self.__txt_file, 'rb').readlines())
    with open(self.__txt_file, 'r', encoding='utf-8') as f:
    data_lines = f.readlines()
    i = 0
    for line in data_lines:
    line = line.strip()
    if not len(line) or line.startswith('#'):
    i = i + 1
    continue
    data_line_list = line.strip(' ').split('|')
    one_test_data_dict = dict(zip(self.__params_list, data_line_list))
    __test_data_list.append(one_test_data_dict)
    valid_lines = total_lines - i
    if test_count is None or test_count > valid_lines or test_count <= 0:
    test_count = valid_lines
    for i in range(test_count):
    _result_data_list.append(__test_data_list[i])
    return _result_data_list
    else:
    log.error('get parameters data error')
    raise IOError('file not exists or file name wrong')



    if __name__ == '__main__':
    txt_file = 'E:/test.txt'
    params_list = ['a', 'c', 'b', 'e']
    gd = GetDataFromTxtFile(txt_file, params_list)
    result = gd.get_data_from_txt()
    print(result)
  • 相关阅读:
    软件工程课感想
    冲刺阶段(二)第五天 5月19日
    CATransition转场动画
    UIView与CALayer的区别
    CALayer的基本属性
    CALayer的基本属性和contexts的内容 即添加图片
    Quartz2D-master手动截图
    CoreAnimation-06-CAKeyframeAnimation 相关代码
    CoreAnimation-06-CAKeyframeAnimation
    视频播放
  • 原文地址:https://www.cnblogs.com/fqfanqi/p/8413511.html
Copyright © 2011-2022 走看看