当前位置: 首页 > 面试题库 >

如何在Python中使用CSV文件的唯一值创建列表?

艾修然
2023-03-14
问题内容

我有一个如下所示的CSV文件,

1994, Category1, Something Happened 1
1994, Category2, Something Happened 2
1995, Category1, Something Happened 3
1996, Category3, Something Happened 4
1998, Category2, Something Happened 5

我想创建两个列表,

Category = [Category1, Category2, Category3]

Year = [1994, 1995, 1996, 1998]

我想忽略该列中的重复项。我正在按以下方式读取文件,

DataCaptured = csv.reader(DataFile, delimiter=',')  
DataCaptured.next()

循环

   for Column in DataCaptured:

问题答案:

你可以做:

DataCaptured = csv.reader(DataFile, delimiter=',', skipinitialspace=True)

Category, Year = [], []
for row in DataCaptured:
    if row[0] not in Year:
        Year.append(row[0])
    if row[1] not in Category:
        Category.append(row[1])

print Category, Year        
# ['Category1', 'Category2', 'Category3'] ['1994', '1995', '1996', '1998']

如评论中所述,如果顺序无关紧要,则使用集合将更加容易和快捷:

Category, Year = set(), set()
for row in DataCaptured:
    Year.add(row[0])
    Category.add(row[1])


 类似资料:
  • 下面是我的一些代码: 谢谢你的协助。

  • 问题内容: 我有一个名为“ clients”的Sqlite 3和/或MySQL表。 使用python 2.6,如何创建带有标题的名为Clients100914.csv的csv文件?excel方言… Sql execute:select *仅提供表数据,但是我想要带有标题的完整表。 如何创建记录集以获取表头。表头应该直接来自不是用python编写的sql。 这段代码使我无法打开文件,也没有标题。也无

  • 问题内容: 我有一个列表列表,我想将其写入csv文件中。示例列表: data [0]应该是列名,其他都是行数据 请给我建议一种方法。 问题答案: 这与模块无关紧要: 您已经具有标题作为第一行;您可以使用该方法一次性写入所有行。真的,这就是全部。

  • 我有一些代码可以读取一个拼花文件,然后显示它,就像这样: 这工作正常,但我想从输出创建一个CSV文件,即: 我希望创建一个CSV文件,其中包含列标题、逗号分隔的数据和数据。这样地: 我纠结于如何将拼花文件中的结果转换为CSV文件。你能帮助我吗?

  • 问题内容: 我有一个Python字典列表,如下所示: 我想实现的是保持,和独特的。 例如,如果我们有3项具有相同和,但有3个不同的值 ,,,则操作之后,它应该是和。 我该如何实现? ================================================== =============更新: 好的,感谢Anand的出色回答,它可以完美运行。但是,我还有一个问题。 假设我们有

  • 我有一个简单的代码,它将一个pandas数据文件保存到一个csv文件中。到目前为止,它是通过覆盖文件名来工作的,所以每次我运行它时,它只是用一个同名的新文件替换旧文件。是否可以保存此数据文件,但让它按顺序创建新文件,即如果目录中已经有一个名为“filename1”的文件,则创建一个名为“filename2”的新文件,这样原始文件中的数据就不会丢失了?