Python:从csv文件设置元组

时间:2014-08-30 14:27:12

标签: python csv

基本上我所拥有的是一个通过某个函数加载的csv文件,让我们调用它

get_csv

因此,当我有这些数据时,我想创建一个新函数来格式化从服务器发送到元组的数据。我将致电

csv_format

所以假设csv有9列,我如何设置它,所以第一列是一个int,接下来的两个是浮点数,最后一个是字符串?我知道这听起来很难,但我希望你能在这里帮助我。

def csv_format(data):
...
....
return get_csv(data)

所以基本上我只需要格式化元组,使其输出如下:

(first, second, third, (fourth, fifth, sixth, seventh, eighth, ninth))

提前谢谢

1 个答案:

答案 0 :(得分:0)

你应该这样做:

import csv

def get_csv(filename):
    with open(filename) as f:
        return list(csv.reader(f))

def csv_format(data):
    return [(row[0], row[1], row[2], tuple(row[3:])) for row in data]

实施例

输入

first,second,third,fourth,fifth,sixth,seventh,eighth,ninth

输出

[('first', 'second', 'third', ('fourth', 'fifth', 'sixth', 'seventh', 'eighth', 'ninth'))]