自2.6版以来已弃用:该dbhash模块已在Python 3中删除。
该dbhash模块提供了使用BSD db库打开数据库的功能。该模块反映了提供对DBM式数据库访问权的其他Python数据库模块的接口。该bsddb模块需要使用dbhash。
该模块提供了一个例外和一个功能:
exception dbhash.error
数据库错误以外的异常引发KeyError。它是一个同义词bsddb.error。
dbhash.open(path[, flag[, mode]])
打开一个db数据库并返回数据库对象。该路径参数是数据库文件的名称。
该标志参数可以是:
值 | 含义 |
---|---|
'R' | 打开仅用于读取的现有数据库(默认) |
'W' | 打开现有的数据库进行读写 |
'C' | 打开数据库进行读写,如果不存在则创建它 |
'N' | 总是创建一个新的空的数据库,打开阅读和写作 |
对于BSD db库支持锁定的平台,'l'可以附加一个表明应该使用锁定的平台。
如果必须创建新的数据库,则可选模式参数用于指示应该设置的Unix权限位; 这将被该过程的当前umask值所掩盖。
1.数据库对象
返回的数据库对象open()为所有DBM样式的数据库和映射对象提供通用的方法。除标准方法外,还提供以下方法。
dbhash.first()
使用这种方法和next()方法可以遍历数据库中的每个键/值对。遍历由数据库内部散列值进行排序,并且不会按键值进行排序。此方法返回开始键。
dbhash.last()
返回数据库遍历中的最后一个键/值对。这可以用来开始逆序遍历; 见previous()。
dbhash.next()
返回数据库遍历中的键下一个键/值对。以下代码打印数据库中的每个键db,而不必在内存中创建一个包含它们的列表:
print db.first()
for i in xrange(1, len(db)):
print db.next()
复制
dbhash.previous()
返回数据库正向遍历中的前一个键/值对。结合使用last(),这可以用来实现逆序遍历。
dbhash.sync()
此方法强制将任何未写入的数据写入磁盘。
网站建设开发|APP设计开发|小程序建设开发