我有一个非常简单的 python脚本,它应该扫描一个文本文件,其中包含格式为id =’value’的行,并将它们放入一个dict中. python模块名为chval.py,输入文件名为in.txt.这是代码: import os,sysfrom os
import os,sys from os import * from sys import * vals = {} f = open(sys.argv[1], 'r') for line in val_f: t = line.split('=') t[1].strip('\'') vals.append(t[0], t[1]) print vals f.close()
当我尝试运行它时,我得到:
Traceback (most recent call last):
File “chval.py”, line 9, in ?
f = open(sys.argv[1], ‘r’) TypeError: an integer is required
我正在使用python 2.4 …因为我一直被要求不使用任何更新的东西,是否有一些我不知道的open()?为什么要整数?
该行之后的任何内容都是未经测试的.简而言之:为什么它会给我错误,我该如何解决?
因为你是从os import *那里做的,所以你(通常)使用os.open,它确实需要一个整数标志而不是文本“r”或“w”.取出那条线,你就会超越那个错误.