当前位置: 首页 > 知识库问答 >
问题:

Python基于列索引列表从枚举列表中选择特定的列值

茅和玉
2023-03-14

在下面的代码中:我正在读取一个文件,获取标题行,查找特定的标题列并存储它们的索引。然后我遍历其余的行,只需要这些索引的值。

    import csv       
def csvReader(csvFileName):
    counter = 10
    keyMap = []
    header = ["Test1","Test2"]
    with open(csvFileName,'r') as f:
        reader = csv.reader(f,skipinitialspace=True)
        Firstline = True
        print(reader)
        for row in reader:
            if counter > 0 and Firstline == True:
                print(list(enumerate(row)))
                indexes =[i for i, j in enumerate(row) if j in header]
                print(indexes)
                Firstline=False
                counter = counter - 1
            elif counter > 0:
                a = dict(zip(header, map((lambda str: row[i] for i in indexes) ,row)))
                print(a)
                print('test')
                counter = counter - 1
        return keyMap   
if __name__ == '__main__':
    csvReader("C:/Test.csv")

共有1个答案

哈朗
2023-03-14

各位,谢谢你们的回复。我刚刚修好了。更改为以下内容:

a = dict(zip(header, map(str, (row[i] for i in indexes))))

但如果有更好的解决方案,请分享。

 类似资料:
  • 我很难选择一个NumPy矩阵的每行的特定列。 假设我有以下矩阵,我称之为: 我还有一个每行列索引的,我称之为: 我需要获得值: 我还可以生成一个与形状相同的矩阵,而不是带有索引的,其中每一列都是一个/范围为0-1的值,指示这是否是必需的列。 我知道这可以通过迭代数组并选择我需要的列值来完成。然而,这将经常在大的数据数组上执行,这就是为什么它必须尽可能快地运行。 因此,我想知道是否有更好的解决办法?

  • 我在python上有一个元素列表,我可以在index.html页面上以下拉列表的形式获得它,并将一个选定的值发送到另一个页面进行处理。问题是如何选择列表中的多个元素。我的意思是只有几个没有或库的元素?

  • 本文向大家介绍列表中特定于Python索引的循环迭代,包括了列表中特定于Python索引的循环迭代的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将编写一个程序来循环访问给定列表中的列表。让我们看一下解决问题的步骤 初始化列表和索引。 使用len查找列表的长度。 使用长度遍历列表。 使用index%length查找元素的索引。 打印元素。 递增索引。 这是一个简单的循环迭代。您可以编写它

  • 问题内容: 是否可以创建枚举值的ArrayList(并对其进行操作)?例如: 问题答案: 是的,绝对有可能,但是您必须这样做 然后,您可以将元素添加到:或。

  • 本文向大家介绍Python从列表中查找子列表元素的索引,包括了Python从列表中查找子列表元素的索引的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将编写一个程序,该程序从列表中查找子列表元素的索引。让我们看一个例子来清楚地理解它。 输入列表 输出结果 让我们看看解决给定问题的最简单,最常见的方法。按照给定的步骤解决它。 初始化列表。 使用索引遍历列表。 遍历子列表并检查要查找索引的元

  • 按降序排序的LinkedHashSet的输出。 对不起,如果这是混淆,我不知道如何去排序像这样。