|
utils_edited.py
修改过的程序会对输入的文件进行检查, 如果在open()发生异常, 就会抛出IOError(可能是因为文件不存在,或没有读取权限); 如果不是每行两个单词, 就会抛出ValueError
- def file2dict(filename):
- """file2dict takes a file name as its argument.
- This file must contain pairs of words.
- It returns the equivalent Python dictionary."""
- import sys
- dict={}
- data = None
- try:
- data = open(filename)
- for line in data:
- try:
- [ key, value ] = line.split()
- except ValueError:
- print "File %s is not in the correct format." % filename
- dict = None
- break
- dict[key] = value
- data.close()
- except IOError, error:
- (errno, errdetails) = error
- print "Problem with file %s: %s" % (filename, errdetails)
- print "Aborting!"
- if type(data) == file:
- data.close()
- sys.exit(1)
- return dict
复制代码 |
|