CSV Python 列表

Posted

技术标签:

【中文标题】CSV Python 列表【英文标题】:CSV Python list 【发布时间】:2020-08-14 20:54:05 【问题描述】:
Name  Gender Physics Maths
A                 45     55
X                 22     64
C                 0       86

我有一个这样的 csv 文件,我做了一些修改以获取仅包含 [[45,55],[22,64]] 形式的标记的列表

我想找到每个主题的最小值。 但是当我运行我的代码时,我只得到第一个主题的最小值,其他值是从行中复制的 我想要的答案 - [0,55] 我得到的答案 - [0,86]

def find_min(marks,cols,rows):
minimum = []
temp = []

for list in marks:
    min1 = min([x for x in list])
    minimum.append(min1)


  # for j in range(rows):
#    for i in range(cols):
 #       temp.append(marks)
  #      x = min(temp)


   #     minimum.append(x)
return minimum

如何修改我的代码 我不能使用任何其他模块/库,如 csv 或 pandas 我尝试使用 zip(*marks) - 但这只是按原样打印我的标记列表。 有什么方法可以将内部列表与较大的列表分开

【问题讨论】:

【参考方案1】:

这将计算每个主题的最小值

In [707]: marks = [[45,55],[22,64]]

In [697]: [min(idx) for idx in zip(*marks)]                                                                                                                                                                 
Out[697]: [22, 55]

【讨论】:

【参考方案2】:

尝试转置 marks 数组(每行一个学生),以便每个列表条目对应于 CSV 中的一列(“主题”):

def find_min(marks):
    mt = zip(*marks)
    mins = [min(row) for row in mt]
    return mins

示例用法:

marks = [[45,55],[22,64],[0,86]]
print(find_min(marks))

哪个打印:

[0, 55]

【讨论】:

在上面添加了“示例用法”。 find_min(marks) 返回最小值列表。

以上是关于CSV Python 列表的主要内容,如果未能解决你的问题,请参考以下文章

Python,转置列表并写入 CSV 文件

将嵌套列表写入 CSV (Python)

如何将 csv 文件转换为 python 中的列表列表

如何将列表列表写入 CSV 文件 Python?

python+selenium怎么读取csv中的数据进行列表循环登录自动化参数登录

Python将整数从csv文件读入列表