Tôi có một kịch bản python rất đơn giản mà nên quét một tập tin văn bản, trong đó có dòng định dạng như id = 'giá trị' và đặt chúng vào một dict. mô-đun python được gọi là chval.py và tệp đầu vào là in.txt. đây là đoạn code:Một số nguyên là bắt buộc? open()
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()
khi tôi cố gắng để chạy nó tôi nhận được:
Traceback (most recent call last):
File "chval.py", line 9, in ? f = open(sys.argv[1], 'r') TypeError: an integer is required
Tôi đang sử dụng python 2.4 ... bởi vì tôi đã được thử thách để không sử dụng bất cứ điều gì mới hơn, là có một cái gì đó về mở() mà tôi không biết về? Tại sao nó muốn một số nguyên?
mọi thứ sau dòng đó chưa được kiểm tra. trong ngắn hạn: tại sao nó cho tôi lỗi và làm thế nào để tôi sửa chữa nó?
Tập lệnh của bạn có lỗi trong đó. vals là một từ điển không có phương thức chắp thêm. Bạn chỉ muốn gán cho các vals [t [0]] = t [1] – Christopher
, nó được cho là "cho dòng trong f:" trái ngược với val_f – Sev
yeah sev, tôi đã trải qua và thay đổi biến của tôi giữa chừng ... cảm ơn vì đã chỉ ra điều đó. – Victor