0

我试图将列表存储在一个平面文件中,由于某种原因我没有看到正在创建的文件..在 c:\python27\basics\db.txt

这是我的代码:

make_db_pickle.py

from Basics import data
import pickle

db = data.people

dbfilename = 'c:\python27\Basics\db.txt'

try:
    dbfile = open('dbfilename','wb')
except IOError as (errno,strerror):
    print "I/O error({0}): {1}".format(errno, strerror)
except ValueError:
    print "Could not convert data to an integer."
except:
    print "Unexpected Error", sys.exc_info() [0]

pickle.dump(db,dbfile)
dbfile.close()

数据.py

bob={'name':'bobs mith','age':42,'salary':5000,'job':'software'}
sue={'name':'sue more','age':30,'salary':3000,'job':'hardware'}

people={}
people['bob'] = bob
people['sue'] = sue
4

1 回答 1

5

您是否期望创建文件“c:\python27\Basics\db.txt”?当你调用 open 时,你给它一个文件名'dbfilename'。我不认为你想要那里的报价。检查文件是否正在创建,但在与您运行脚本的目录相同的目录中,并且在文件名“dbfilename”下。

因此,如果您在“C:\MyStuff”下运行此脚本,请检查文件“C:\MyStuff\dbfilename”。

于 2012-06-02T20:18:58.767 回答