【发布时间】:2019-04-09 15:24:48
【问题描述】:
我是 Python 的初学者,我想了解如何计算 csv 文件中的最小值/最大值、平均值、中值。请注意,不使用 csv 模块或任何类型的模块。我只想使用“读取/打开文件”的方法。
所以在放入读取文件的代码后,这就是我写的(我只想读取文件的第二列):
with open("data.csv", "r") as x:
second = []
for line in x:
spl = [float(data.split(',')[1]) for data in x]
second.append(spl[0:6])
print(second)
lowest = min(second)
print(lowest)
当我执行此操作时,Python 会打印出两个语句(第二列,就像我想要的那样),但会打印出,例如 [x, y, z],而不是实际计算最小值。
当我尝试在 spl = [...] 行中省略 float 部分时,Python 只是执行相同的操作,但改为 ['x','y','z'](带引号)。
【问题讨论】:
-
@Pedro Lobito 抱歉,这是什么意思?
-
你能分享
data.csv的示例行吗?没有清晰的样本,很难为您提供帮助。 -
@coconutjeon: 这是因为你的
second是一个列表列表,尝试连接而不是追加。 -
@Pedro Lobito 该文件仅包含第一行和第一列(即单词)的标题,其余部分包含浮点数。我上面写的代码执行第二列(不包括该列的标题),它是一个数字列表。
-
@Pedro Lobito 列的最小值和最大值。
标签: python python-3.x csv