python根据时间生成mongodb的ObjectId的方法


Posted in Python onMarch 13, 2015

本文实例讲述了python根据时间生成mongodb的ObjectId的方法。分享给大家供大家参考。具体分析如下:

mongodb的_id为ObjectId类型,ObjectId内是包含时间戳信息的,这样我们在保存数据的时候就不需要再单独记录一个添加时间了,如果需要按照时间查询,我们可以先把时间变化成可查询的ObjectId,再通过_id字段查询,由于mongodb的_id是主键,查询效率非常高。下面的函数给出了如何把时间换算成ObjectId,同时该函数还可以指定时间的偏移量,比如多少天前的时间。

def object_id_from_datetime(from_datetime=None,span_days=0,span_hours=0,span_minutes=0,span_seconds=0,span_weeks=0):

    '''根据时间手动生成一个objectid,此id不作为存储使用'''

    if not from_datetime:

        from_datetime = datetime.datetime.now()

    from_datetime = from_datetime + datetime.timedelta(days=span_days,hours=span_hours,minutes=span_minutes,weeks=span_weeks)

    return ObjectId.from_datetime(generation_time=from_datetime)

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

Python 相关文章推荐
打开电脑上的QQ的python代码
Feb 10 Python
python连接远程ftp服务器并列出目录下文件的方法
Apr 01 Python
python距离测量的方法
Mar 06 Python
Python实现的直接插入排序算法示例
Apr 29 Python
PyTorch搭建多项式回归模型(三)
May 22 Python
pandas的连接函数concat()函数的具体使用方法
Jul 09 Python
pytorch获取vgg16-feature层输出的例子
Aug 20 Python
对python中 math模块下 atan 和 atan2的区别详解
Jan 17 Python
PyQt5+Pycharm安装和配置图文教程详解
Mar 24 Python
Python logging日志模块 配置文件方式
Jul 12 Python
Python 如何定义匿名或内联函数
Aug 01 Python
python文件排序的方法总结
Sep 13 Python
python实现根据窗口标题调用窗口的方法
Mar 13 #Python
Python实现遍历windows所有窗口并输出窗口标题的方法
Mar 13 #Python
Python实现windows下模拟按键和鼠标点击的方法
Mar 13 #Python
Python实现测试磁盘性能的方法
Mar 12 #Python
Python解析xml中dom元素的方法
Mar 12 #Python
Python实现Tab自动补全和历史命令管理的方法
Mar 12 #Python
Python实现将n个点均匀地分布在球面上的方法
Mar 12 #Python
You might like
学习使用curl采集curl使用方法
2012/01/11 PHP
深入解析php之apc
2013/05/15 PHP
PHP cdata 处理(详细介绍)
2013/07/05 PHP
9个实用的PHP代码片段分享
2015/01/22 PHP
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式
2012/10/11 Javascript
jQuery中nextAll()方法用法实例
2015/01/07 Javascript
jquery Validation表单验证使用详解
2020/09/12 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
Node.js开发者必须了解的4个JS要点
2016/02/21 Javascript
深入理解vue.js双向绑定的实现原理
2016/12/05 Javascript
Angular4 中常用的指令入门总结
2017/06/12 Javascript
ionic环境配置及问题详解
2017/06/27 Javascript
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
iView框架问题整理小结
2018/10/16 Javascript
微信小程序中weui用法解析
2019/10/21 Javascript
python基础教程之基本数据类型和变量声明介绍
2014/08/29 Python
Python时间的精准正则匹配方法分析
2017/08/17 Python
浅谈Django学习migrate和makemigrations的差别
2018/01/18 Python
Python3.6基于正则实现的计算器示例【无优化简单注释版】
2018/06/14 Python
python3.5基于TCP实现文件传输
2020/03/20 Python
python爬虫刷访问量 2019 7月
2019/08/01 Python
Python 使用matplotlib模块模拟掷骰子
2019/08/08 Python
tensorflow 实现数据类型转换
2020/02/17 Python
python如何从键盘获取输入实例
2020/06/18 Python
Django视图、传参和forms验证操作
2020/07/15 Python
python eventlet绿化和patch原理
2020/11/21 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
python 写一个水果忍者游戏
2021/01/13 Python
Sephora丝芙兰泰国官方网站:国际知名化妆品购物
2017/11/15 全球购物
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
建筑设计师岗位职责
2013/11/18 职场文书
工程业务员岗位职责
2013/12/31 职场文书
素质教育标语
2014/06/27 职场文书
中秋节活动总结
2014/08/29 职场文书
导游词之广州陈家祠
2019/10/21 职场文书
Python 中的 copy()和deepcopy()
2021/11/07 Python