我试图在Python中模拟bash概念,将CSV中的数据作为变量值对。我有一个CSV文件,无论如何都可以制作(由我决定)。目前它看起来像这样......
Unit,pixels
AvgVol,87654
AvgLen,5432
同样是一长串的价值观。如果修改CSV将使其有效,请同时建议。
我试图以这样的方式阅读这些内容,即我可以使用使用 Unit 或 87654 来访问 pixels 等值> AvgVol ,无需记住其索引,类似于cat
或source
在bash中的作用。无论如何,这很有用,这样我就可以用变量列表及其值来编辑我的CSV文件,而不必担心它们的顺序或任何引用特定变量时的值。我稍后会将这些用于其他计算,所以我可以像
if AvgVol>MaxVol:
print 'something'
任何帮助都表示赞赏,我希望它的可行性不会太复杂。谢谢!
答案 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)