这是我用于读取文本文件的代码,将其存储为字典:
from sys import argv
def data(file):
d = {}
for line in file:
if line.strip() != '':
key,value = line.split(":")
if key == 'RootObject':
continue
if key == 'Object':
obj = value.strip()
d[obj]={}
else:
d[obj][key] = value.strip()
return d
file = open(argv[1])
planets = data(file)
print(planets)
我的问题是我是否正确实现了argv
,以便任何用户只需在命令行中键入solardictionary.py random.txt
即可运行字典并运行它。我尝试运行此操作,但我一直收到索引错误,并且我不确定我的argv
实现可能有问题。
答案 0 :(得分:1)
您需要输入file = open(sys.argv[1],'r')
才能访问该阵列,因为它包含在sys
模块中。
http://docs.python.org/3.1/library/sys.html#module-sys
您可能也有兴趣在try-catch块中打开文件。