在Python中将CSV数据导入为变量值对

时间:2016-10-24 00:56:15

标签: python bash csv

我试图在Python中模拟bash概念,将CSV中的数据作为变量值对。我有一个CSV文件,无论如何都可以制作(由我决定)。目前它看起来像这样......

Unit,pixels
AvgVol,87654
AvgLen,5432

同样是一长串的价值观。如果修改CSV将使其有效,请同时建议。

我试图以这样的方式阅读这些内容,即我可以使用使用 Unit 87654 来访问 pixels 等值> AvgVol ,无需记住其索引,类似于catsource在bash中的作用。无论如何,这很有用,这样我就可以用变量列表及其值来编辑我的CSV文件,而不必担心它们的顺序或任何引用特定变量时的值。我稍后会将这些用于其他计算,所以我可以像

一样
if AvgVol>MaxVol:
   print 'something'

任何帮助都表示赞赏,我希望它的可行性不会太复杂。谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用csv模块执行任务。

以下是一个例子:

$ cat csvfile 
Unit,pixels
AvgVol,87654
AvgLen,5432
$ python3 script.py 
{'Unit': 'pixels', 'AvgLen': 5432, 'AvgVol': 87654}

这是python程序:

import csv

csvdict={}
with open('csvfile', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        csvdict[row[0]]=(int(row[1]) if row[1].isdigit() else row[1])

print(csvdict)