python操作CouchDB的方法

本文简单讲述了python操作CouchDB的方法,分享给大家供大家参考。具体方法如下:

1.安装python couchDb库:

https://pypi.python.org/pypi/CouchDB/0.10

2.连接服务器

>>> import couchdb
>>> couch = couchdb.Server('http://example.com:5984/')

3.创建数据库

>>> db = couch.create('test') # 新建数据库
>>> db = couch['mydb'] # 使用已经存在的数据库

4.创建文档并插入到数据库:

>>> doc = {'foo': 'bar'}
>>> db.save(doc)
('e0658cab843b59e63c8779a9a5000b01', '1-4c6114c65e295552ab1019e2b046b10e')
>>> doc
{'_rev': '1-4c6114c65e295552ab1019e2b046b10e', 'foo': 'bar', '_id': 'e0658cab843b59e63c8779a9a5000b01'}

save()方法会返回'_id','_rev'字段

5.通过id查询数据库

>>> db['e0658cab843b59e63c8779a9a5000b01']
<Document 'e0658cab843b59e63c8779a9a5000b01'@'1-4c6114c65e295552ab1019e2b046b10e' {'foo': 'bar'}>

6.更新文档 :

>>> data = db["5fecc0d7fe5acac6b46359b5eec4f3ff"]
>>> data['billSeconds'] = 191
>>> db.save(data)
(u'5fecc0d7fe5acac6b46359b5eec4f3ff', u'3-6b8a6bb9f2428c510dcacdd5c918d632')

7.遍历数据库

>>> for id in db:
...   print id
...
'e0658cab843b59e63c8779a9a5000b01'

8.删除文档并清理数据库

>>> db.delete(doc)
>>> couch.delete('test')

希望本文所述对大家的Python程序设计有所帮助。

(0)

相关推荐

  • wxPython窗口中文乱码解决方法

    本文实例讲述了wxPython窗口中文乱码解决方法,分享给大家供大家参考.具体方法如下: 文件保存为 utf-8 文件开头添加 # -*- coding: utf-8 -*- 在有中文字符串前加u或U,例如:u"我的网站:http://www.jb51.net" 示例如下: 复制代码 代码如下: # -*- coding: utf-8 -*- import wx class App(wx.App):       def OnInit(self):         frame = wx.

  • python实现每次处理一个字符的三种方法

    本文实例讲述了python每次处理一个字符的三种方法.分享给大家供大家参考. 具体方法如下: a_string = "abccdea" print 'the first' for c in a_string: print ord(c)+1 print "the second" result = [ord(c)+1 for c in a_string] print result print "the thrid" def do_something(

  • python根据路径导入模块的方法

    本文实例讲述了python根据路径导入模块的方法,分享给大家供大家参考.具体方法如下: 常规做法如下: import sys sys.path.append('C:/full/path') from foo import util,bar 而要直接通过路径 import imp util = imp.load_source('util', 'C:/full/path/foo/util.py') 使用时使用util.method,此时并没有定义method method = util.method

  • Python获取文件ssdeep值的方法

    本文实例讲述了Python获取文件ssdeep值的方法,分享给大家供大家参考.具体方法如下: 首先,得到ssdeep值,需要先import ssdeep 在ubuntu上安装pyssdeep时 一直出错  后来发现apt-cache search "ssdeep"时把几个全apt-get install 上,但问题依旧. 后来下载到pyssdeep的源文件 ,tar zxvf pyssdeep.tar.zip 然后 apt-get install python-dev 然后 pytho

  • python中__call__方法示例分析

    本文实例讲述了python中__call__方法的用法,分享给大家供大家参考.具体方法分析如下: Python中的__call__允许程序员创建可调用的对象(实例),默认情况下, __call__()方法是没有实现的,这意味着大多数实例是不可调用的.然而,如果在类定义中覆盖了这个方法,那么这个类的实例就成为可调用的. test.py文件如下: #!/usr/bin/python # Filename:test.py class CallTest(): def __init__(self): pr

  • Python实现115网盘自动下载的方法

    本文实例讲述了Python实现115网盘自动下载的方法.分享给大家供大家参考.具体实现方法如下: 实例中的1.txt,是网页http://bbs.pediy.com/showthread.php?t=144788另存为1.txt 通过每3秒钟复制一个下载链接到粘贴板,复制时会自动调用115客户端下载,每下载10个文件会手工输入一个字符,防止一下下载太多,卡死机器 具体代码如下: import re, os, time import webbrowser import urllib if __na

  • Python中__call__用法实例

    本文实例讲述了Python中__call__的用法,分享给大家供大家参考之用.具体方法如下: 先来看看如下示例代码: #call.py 一个class被载入的情况下. class Next: List = [] def __init__(self,low,high) : for Num in range(low,high) : self.List.append(Num ** 2) def __call__(self,Nu): return self.List[Nu] 如果 这样使用: b = N

  • python中的__init__ 、__new__、__call__小结

    1.__new__(cls, *args, **kwargs)  创建对象时调用,返回当前对象的一个实例;注意:这里的第一个参数是cls即class本身2.__init__(self, *args, **kwargs) 创建完对象后调用,对当前对象的实例的一些初始化,无返回值,即在调用__new__之后,根据返回的实例初始化:注意,这里的第一个参数是self即对象本身[注意和new的区别]3.__call__(self,  *args, **kwargs) 如果类实现了这个方法,相当于把这个类型

  • python求pi的方法

    本文实例讲述了python求pi的方法,是一篇翻译自国外网站的文章,分享给大家供大家参考. 具体实现方法如下: #_*_ coding=utf-8 *_* ## {{{ http://code.activestate.com/recipes/578130/ (r5) def pi(places=10): """Computes pi to given number of decimal places 参数places表示要返回的pi的小数点后位数 方法:先整体扩大10**8(

  • python求crc32值的方法

    本文实例讲述了python求crc32值的方法.分享给大家供大家参考.具体实现方法如下: 要想求CRC值,前面要import binascii binascii.crc32(v)  求出了v的crc32值,这是一个long型,形如-1456387L,把这个值&0xffffffff得到的值形如48a213L的形式. 然后把这个值用16进制表示出来. 具体代码如下: def _crc32(self, v): """ Generates the crc32 hash of

  • python实现调用其他python脚本的方法

    本文实例讲述了python实现调用其他python脚本的方法,分享给大家供大家参考.具体方法如下: 该实例调用当前目录下的md5get.py脚本.代码如下: import os import logging import subprocess log = logging.getLogger("Core.Analysis.Processing") INTERPRETER = "/usr/bin/python" if not os.path.exists(INTERPR

随机推荐