python mongoDB相关代码
根据id查询(pymongo 2.4.1-3.1.1)
from bson.objectid import ObjectId
for item in dbm.neo_nodes.find({"_id": ObjectId(obj_id_to_find)})]
http://stackoverflow.com/questions/16073865/search-by-objectid-in-mongodb-with-pymongo
http://www.jb51.net/article/66425.htm(过时的方法)
一些api:
mydb = con.mydb # new a database
mydb.add_user('test', 'test') # add a user
mydb.authenticate('test', 'test') # check auth
muser = mydb.user # new a table
muser.save({'id':1, 'name':'test'}) # add a record
muser.insert({'id':2, 'name':'hello'}) # add a record
muser.find_one() # find a record
muser.find_one({'id':2}) # find a record by query
muser.create_index('id')
muser.find().sort('id', pymongo.ASCENDING) # DESCENDING
# muser.drop() delete table
muser.find({'id':1}).count() # get records number
muser.find({'id':1}).limit(3).skip(2) # start index is 2 limit 3 records
muser.remove({'id':1}) # delet records where id = 1
muser.update({'id':2}, {'$set':{'name':'haha'}}) # update one recor
http://www.cnblogs.com/DxSoft/archive/2010/10/21/1857371.html
如果出现:AttributeError: ‘module’ object has no attribute ‘Connection’
这个错误,是因为版本pymongo.Connection()在新版本中,这个方法已经不存在了,应该这样用:
from pymongo import MongoClient
client=MongoClient()#链接默认的host和port
client=MongoClient('localhost', 27017)
client.db.table.find()
枚举find的结果:
cursor = list(table.find().limit(10).skip(10*(page-1)))
for item in cursor:
print item
部分命令:
连接数据库
>>> db = conn.ChatRoom
或
>>> db = conn['ChatRoom']
连接聚集
>>> account = db.Account
或
>>> account = db["Account"]
查看全部聚集名称
>>> db.collection_names()
查看聚集的一条记录
>>> db.Account.find_one()
>>> db.Account.find_one({"UserName":"keyword"})
查看聚集的字段
>>> db.Account.find_one({},{"UserName":1,"Email":1})
{u'UserName': u'libing', u'_id': ObjectId('4ded95c3b7780a774a099b7c'), u'Email': u'libing@35.cn'}
>>> db.Account.find_one({},{"UserName":1,"Email":1,"_id":0})
{u'UserName': u'libing', u'Email': u'libing@35.cn'}
查看聚集的多条记录
>>> for item in db.Account.find():
item
>>> for item in db.Account.find({"UserName":"libing"}):
item["UserName"]
查看聚集的记录统计
>>> db.Account.find().count()
>>> db.Account.find({"UserName":"keyword"}).count()
聚集查询结果排序
>>> db.Account.find().sort("UserName") --默认为升序
>>> db.Account.find().sort("UserName",pymongo.ASCENDING) --升序
>>> db.Account.find().sort("UserName",pymongo.DESCENDING) --降序
聚集查询结果多列排序
>>> db.Account.find().sort([("UserName",pymongo.ASCENDING),("Email",pymongo.DESCENDING)])
添加记录
>>> db.Account.insert({"AccountID":21,"UserName":"libing"})
修改记录
>>> db.Account.update({"UserName":"libing"},{"$set":{"Email":"libing@126.com","Password":"123"}})
删除记录
>>> db.Account.remove() -- 全部删除
>>> db.Test.remove({"UserName":"keyword"})
python webpy相关
webpy3.0模板中文文档
http://webpy.org/docs/0.3/templetor.zh-cn
webpy3.0获取上传的文件:
http://webpy.org/cookbook/fileupload.zh-cn
params = web.input(myfile={})
with open(filedir + '/' + filename, 'wb') as f_out:
f_out.write(params['myfile'].file.read())
f_out.close()
指定404结果
web.notfound()
python相关
一. 使用md5包
import md5
src = 'this is a md5 test.'
m1 = md5.new()
m1.update(src)
print m1.hexdigest()
二. 使用hashlib
import hashlib
m2 = hashlib.md5()
m2.update(src)
print m2.hexdigest()
推荐使用第二种方法。
http://outofmemory.cn/code-snippet/939/python-liangzhong-produce-md5-method
时间格式化输出:
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
strftime(format[, tuple]) -> string
将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
python文件操作:
>>> os.path.exists('d:/assist/getTeacherList.py')
True
>>> os.path.isfile('d:/assist')
False
>>> os.path.isfile('d:/assist/getTeacherList.py')
True
>>> os.makedirs('d:/assist/set')
字符串是否包含:
my_string = "abcdef"
if "abc" in my_string:
has_abc = True
字符串转整数:
http://blog.csdn.net/tweller/article/details/7767538
import string
tt='555'
ts=string.atoi(tt)
附录:
mongo命令:http://blog.csdn.net/delbboy/article/details/7611715