Python中的元组和CSV阅读器

时间:2015-01-07 03:04:46

标签: python csv tuples

尝试相对简单的事情。

首先,我将带有元组的字典作为键,如下所示: (0,1,1,0):“索引1”

我正在读取一个CSV文件,该文件有一组相应的字段,其中包含这些0和1的各种组合。因此,例如,CSV中的行可以读取0,1,1,0而不进行任何引用。我正在尝试将文件中的0和1的组合与字典的键匹配。使用标准CSV模块

然而问题是,零和一个是用单引号而不是整数读入的字符串。换句话说,从每一行创建的元组结构为('0','1','1','0')不匹配(0,1,1,0)

任何人都可以了解如何将CSV带入并删除单引号?元组匹配和CSV读取似乎有效 - 只需要理顺数据格式。

谢谢!

2 个答案:

答案 0 :(得分:0)

tuple(int(x) for x in ('0','1','1','0'))    # returns (0,1,1,0)

因此,如果您的CSV阅读器对象被称为csv_reader,您只需要这样的循环:

for row in csv_reader:
    tup = tuple(int(x) for x in row)
    # ...

答案 1 :(得分:0)

当您读入CSV文件时,根据您使用的库,您可以指定分隔符。

通常,逗号被解释为分隔符。也许您可以将分隔符指定为其他内容,例如' - ',以便将一组数字作为字符串一起读取,并且可以使用各种方法将其转换为元组,例如使用ast.literal_eval中提到的converting string to tuple

希望有所帮助!