Python使用当前时间、随机数产生一个唯一数字的方法


Posted in Python onSeptember 18, 2017

本文实例讲述了Python使用当前时间、随机数产生一个唯一数字的方法。分享给大家供大家参考,具体如下:

Python生成当前时间很简单,比Java的代码简短多了,Java产生时间可参考《Java获取当前系统事件System.currentTimeMillis()方法》

具体代码如下:

#-*-coding:utf-8-*-
import datetime
now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
print now;

运行结果如下,输出当前的时间,时间格式根据strftime("%Y-%m-%d %H:%M:%S")而定,相应的格式,正如C语言的printf语句那样简单。

Python使用当前时间、随机数产生一个唯一数字的方法

Python可以利用如下语句产生唯一的随机数:

import random;
print random.randint(0,100);#生成的随机整数n,其中0<=n<=100

据此,我们可以利用当前时间、随机数产生一个唯一的数字,用于一些上传文件,产生文件等场合,

考虑到极端情况,在1秒内有1000个用户上传文件,也不会出现冲突的最好情况,就是利用当前时间+0~1000的随机整数,构造一个随机数字:

唯一值得注意的是,拼接时间与字符串要转化成字符串才拼接,而不是直接相加,由于Python是没有变量声明的,直接相加则变成了数字之间的相加了。

同时注意,如果随机数随机到一个比10少的数字,应当在随机产生出来的数字前面补上一个0,使得产生的数字的位数是相同的。

具体代码如下:

#-*-coding:utf-8-*-
import datetime;
import random;
nowTime=datetime.datetime.now().strftime("%Y%m%d%H%M%S");#生成当前时间
randomNum=random.randint(0,100);#生成的随机整数n,其中0<=n<=100
if randomNum<=10:
  randomNum=str(0)+str(randomNum);
uniqueNum=str(nowTime)+str(randomNum);
print uniqueNum;

以下Python程序,将利用for设置10个测试用例来测试在一秒内产生的结果,代码如下:

#-*-coding:utf-8-*-
import datetime;
import random;
for i in range (0,10):
  nowTime=datetime.datetime.now().strftime("%Y%m%d%H%M%S");#生成当前时间
  randomNum=random.randint(0,100);#生成的随机整数n,其中0<=n<=100
  if randomNum<=10:
    randomNum=str(0)+str(randomNum);
  uniqueNum=str(nowTime)+str(randomNum);
  print uniqueNum;

得到的运行结果如下图,可以发生产生出来的数字没有一个是相同的:

Python使用当前时间、随机数产生一个唯一数字的方法

Python 相关文章推荐
详解Python中用于计算指数的exp()方法
May 14 Python
python中MethodType方法介绍与使用示例
Aug 03 Python
Python IDLE入门简介
Dec 08 Python
详解从Django Rest Framework响应中删除空字段
Jan 11 Python
Python配置文件处理的方法教程
Aug 29 Python
python如何实现不用装饰器实现登陆器小程序
Dec 14 Python
Windows下python3安装tkinter的问题及解决方法
Jan 06 Python
python正则过滤字母、中文、数字及特殊字符方法详解
Feb 11 Python
Python常用base64 md5 aes des crc32加密解密方法汇总
Nov 06 Python
celery在python爬虫中定时操作实例讲解
Nov 27 Python
python自动化发送邮件实例讲解
Jan 04 Python
使用python生成大量数据写入es数据库并查询操作(2)
Sep 23 Python
Python实现变量数值交换及判断数组是否含有某个元素的方法
Sep 18 #Python
Python实现输出程序执行进度百分比的方法
Sep 16 #Python
Python实现求笛卡尔乘积的方法
Sep 16 #Python
轻松理解Python 中的 descriptor
Sep 15 #Python
Python 实现购物商城,含有用户入口和商家入口的示例
Sep 15 #Python
python中reload(module)的用法示例详解
Sep 15 #Python
Python 关于反射和类的特殊成员方法
Sep 14 #Python
You might like
php实现文件编码批量转换
2014/03/10 PHP
php中curl和file_get_content的区别
2014/05/10 PHP
php中__destruct与register_shutdown_function执行的先后顺序问题
2014/10/17 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
2016/11/25 PHP
PHP7基于curl实现的上传图片功能
2018/05/11 PHP
php设计模式之观察者模式定义与用法经典示例
2019/09/19 PHP
redis+php实现微博(三)微博列表功能详解
2019/09/23 PHP
jcarousellite.js 基于Jquery的图片无缝滚动插件
2010/12/30 Javascript
jQuery过滤选择器:not()方法使用介绍
2014/04/20 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
jquery radio的取值_radio的选中_radio的重置方法
2016/09/20 Javascript
js放大镜放大购物图片效果
2017/01/18 Javascript
Bootstrap table表格简单操作
2017/02/07 Javascript
Ajax异步文件上传与NodeJS express服务端处理
2017/04/01 NodeJs
Javascript操作dom对象之select全面解析
2017/04/24 Javascript
vue2.0路由切换后页面滚动位置不变BUG的解决方法
2018/03/14 Javascript
vue引用js文件的多种方式(推荐)
2018/05/17 Javascript
vue中的router-view组件的使用教程
2018/10/23 Javascript
vue中轮训器的使用
2019/01/27 Javascript
JavaScript中构造函数与原型链之间的关系详解
2019/02/25 Javascript
JavaScript实现Tab标签页切换的最简便方式(4种)
2020/06/28 Javascript
[18:16]sakonoko 2017年卡尔集锦
2018/02/06 DOTA
Python中的time模块与datetime模块用法总结
2016/06/30 Python
Python之用户输入的实例
2018/06/22 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
2018/08/05 Python
python Tcp协议发送和接收信息的例子
2019/07/22 Python
Python中正反斜杠(‘/’和‘\’)的意义与用法
2019/08/12 Python
获取python运行输出的数据并解析存为dataFrame实例
2020/07/07 Python
Python限制内存和CPU使用量的方法(Unix系统适用)
2020/08/04 Python
ghd官网:英国ghd直发器品牌
2018/05/04 全球购物
HEMA法国:荷兰原创设计
2019/02/21 全球购物
美国克罗格超市在线购物:Kroger
2019/06/21 全球购物
印尼在线旅游门户网站:NusaTrip
2019/11/01 全球购物
市场营销专业毕业生自荐信
2013/11/02 职场文书
如何打造一封优秀的留学推荐信
2014/01/25 职场文书
2014年教育教学工作总结
2014/11/13 职场文书