本文是一篇关于文件模块的帖子
在一些python小型应用程序中,不需要关系型数据库时,可以便利的用速决字典来存储称名/值对,它与python的字典非常似类,要主别区在于数据是在磁盘取读和写入的。另一个别区在于dbm的键和值必须是字符串类型。
1.择选dbm模块
python持支很多dbm模块,遗憾的是,个每dbm模块创立的文件不兼容。
下表列出这些模块:
模块 | 说明 |
dbm | 择选最好的dbm模块 |
dbm.dumb | 用使dbm库的一个简略但可移植的现实 |
dbm.gnu | 用使GNU dbm的库 |
一般除非某个dbm库有殊特高等能功,那就用dbm模块。
2.创立速决词典
码代:
import dbm db = dbm.open('Bookmark', 'c') #添加选项 db['MyBlog'] = 'jonathanlife.sinaapp.com' print(db['MyBlog']) #保存,关闭 db.close()
open函数关于开打dbm的方法有三种:
标记 | 用法 |
C | 开打文件对其读写,必要时创立该文件 |
W | 开打文件对其读写,如果文件不存在,不会创立它 |
N | 开打文件行进读写,但是总创立一个新的空白文件 |
也可以传递另一种示表式模的可选参数,该式模保存了一组UNIX文件限权,这里不细说。
3.拜访速决字典
从open函数返回的对象视作一个字典对象。对值的取存方法如下:
db[‘key’] = ‘value’
value = db[‘key’]
除删值:
del db[‘key’]
遍历全部key:
for key in db.keys():
#your code here
可以将如下脚本作为一个用使dbm的指点:
import dbm #open existing file db = dbm.open('websites', 'w') #add item db['first_data'] = 'Hello world' #verify the previous item remains if db['first_data'] != None: print('the data exists') else: print('Missing item') #iterate over the keys, may be slow for key in db.keys(): print("Key=",key," value=",db[key]) #delete item del db['first_data'] #close and save to disk db.close()
done,预祝各位程序猿们happy new year。
文章结束给大家分享下程序员的一些笑话语录: 话剧:程序员过沟
本剧内容纯属虚构,如有雷同……HEHE……俺也没办法了。
话说某市街道改建,某某软件公司门口横七竖八挖了几条大沟。一群程序员(SDK程序员赵某,VB程序员钱某,VC程序员孙某,DELPHI程序员李某)下班从公司里出来,看到门前的几条沟,于是各显神通……门前第一条沟也就半米来宽,SDK程序员赵某二话没说,轻轻一跃跳了过去,看到其它人纷纷把随身携带的公文包(类库)横在沟上踩着过沟,不屑地说,这么小一条沟,犯得着小题大做用那个吗?看我多么轻松多么洒脱多么……多么……(众人皆怒目横视之……)
接着第二条沟有点宽度。SDK程序员赵某还是还是一马当先,飞跃而起……不好,还差一点才到……幸好凭着多年的(跳远?编程?)经验,单手抓住沟沿,颤巍巍地爬了上来,嘴里还念念有词“高手就是高手啊,虽然差一点就……不过毕竟……HEHE……跳远是过沟的基础嘛,有基础(SDK)就有一切的说……”(众人作瞠目结舌状……)看到别人跳过去了,可自己又跳不了那么远,只好再想办法了……VB程序员钱某,DELPHI程序员李某打开手提,连上手机,开始上网找可供过沟的控件……VC程序员孙某却不慌不忙,打开公文包,把几块衬板拆了下来,然后三下五除二拼成一个简易木桥……“虽然这几个板子(类)做得不怎么样,不过先把这个项目应付过去,有时间我自己做一个好了……”于是踩着板子过了沟。
这时钱某和李某也分别找到了合适的东东。钱某找到的是“钢丝绳.ocx”,安装简单,使用方便,拉出一头,对孙某说“大虾,顺手拉兄弟一把……”,于是把绳子系在沟两边的绿化树木上,踩着钢丝就过了沟。刚刚站稳就四方作揖,“小生这里有礼了”。这时一戴着黄袖圈的老太太跳了出来,抓住钱某,“破坏绿化树木,罚款XXXX元,交钱,交钱,交钱!”(老人家作双枪老太婆怒视伪军状
……钱某被逼无奈,只好边掏钱,边对着后台叫道“导演,我这可是因公牺牲,不给个烈士称号也得报销”,后台一个臭鸡蛋飞出,“叫什么叫,我这个月的粮饷还不知哪里去领呢,都什么时代了,你不下岗都不错了……”)
李某看着刚刚好不容易从台湾拖回来的“铝条.ZIP”
相关推荐
学习python时经常要用到一些模块,这个文件里有python常用模块详解
python模块详解 各个模块的详解 核心模块 1.1. 介绍 1.2. _ _builtin_ _ 模块 1.3. exceptions 模块 1.4. os 模块 1.5. os.path 模块 1.6. stat 模块 1.7. string 模块 1.8. re 模块 1.9. math 模块 1.10....
常见密码字典(弱口令+少量英文),附赠WiFi密码破解脚本 仅供学习和测试用。
【个人猜想 python 使用 shelve 作为数据持久化模块名字的原因】 shelve释义 vt. 将(书等)放置在架子上。通过上述表格可以理解 python 使用 shelve (释义 vt. 将(书等)放置在架子上)作为数据持久化模块名字的...
logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等;相比print,具备如下优点: 可以通过设置不同的日志等级,在release版本中只输出重要信息,而...
内置模块 pickle 可以将 python 文件对象转换为 python 专用格式存储到硬盘以便于持久保存。 模块 pickle 可以处理: 所有python支持的原生类型:布尔值,整数,浮点数,复数,字符串,字节,None 。 由任何原生类型...
python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学运算模块 python数学...
python编程游戏海龟模块gameturtle说明文件使用方法说明python编程游戏海龟模块gameturtle说明文件使用方法说明python编程游戏海龟模块gameturtle说明文件使用方法说明python编程游戏海龟模块gameturtle说明文件使用...
使用简单方便的模型转字典模块(Python3) 模型对象转换成字典,列表模型对象转换成列表 支持关联模型转换,不需要显示的字段,字段值的修改
python创意编程精灵模块学习使用手册自学教学好手册python创意编程精灵模块学习使用手册自学教学好手册python创意编程精灵模块学习使用手册自学教学好手册python创意编程精灵模块学习使用手册自学教学好手册python...
主要介绍了Python内置模块turtle绘图详解,具有一定借鉴价值,需要的朋友可以参考下。
Python 解决使用pyStrich模块的程序在打包时出现找不到字体文件的错误 Python源码Python 解决使用pyStrich模块的程序在打包时出现找不到字体文件的错误 Python源码Python 解决使用pyStrich模块的程序在打包时出现找...
【Python入门】Python字典的11个方法超级详解
python进阶之socket模块详解.pdf
Python中对信号处理的模块主要是使用signal模块,但signal主要是针对Unix系统,所以在Windows平台上Python不能很好的发挥信号处理的功能。 要查看Python中的信号量,可以使用dir(signal)来查看。 signal.signal() 在...
python读写rar文件的模块 python读写rar文件的模块
Python_OS模块
Python解析cdd 文件 和 批量删除CANoe工程cbf文件
使用Python处理S19文件,分析S19文件中的数据。能够很好地帮助分析S19文件
今天小编就为大家分享一篇对Python3 pyc 文件的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧