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入门篇之数字
Oct 20 Python
Python实现网站文件的全备份和差异备份
Nov 30 Python
Python发送http请求解析返回json的实例
Mar 26 Python
根据DataFrame某一列的值来选择具体的某一行方法
Jul 03 Python
在python中安装basemap的教程
Sep 20 Python
Python3中关于cookie的创建与保存
Oct 21 Python
python 获取等间隔的数组实例
Jul 04 Python
Python中print函数简单使用总结
Aug 05 Python
Python 函数绘图及函数图像微分与积分
Nov 20 Python
Python paramiko使用方法代码汇总
Nov 20 Python
Python函数调用追踪实现代码
Nov 27 Python
python设置 matplotlib 正确显示中文的四种方式
May 10 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中获取文件扩展名的N种方法小结
2012/02/27 PHP
分享常见的几种页面静态化的方法
2015/01/08 PHP
如何使用PHP Embed SAPI实现Opcodes查看器
2015/11/10 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
laravel5.4生成验证码的实例讲解
2017/08/05 PHP
javascript数字数组去重复项的实现代码
2010/12/30 Javascript
jQuery中的$.ajax()方法应用
2014/05/06 Javascript
JS实现简洁、全兼容的拖动层实例
2015/05/13 Javascript
Js 获取当前函数参数对象的实现代码
2016/06/20 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
使用vue.js实现联动效果的示例代码
2017/01/10 Javascript
socket.io学习教程之基本应用(二)
2017/04/29 Javascript
AngularJS中使用ngModal模态框实例
2017/05/27 Javascript
vue实现微信获取用户信息的方法
2019/03/21 Javascript
详解vue中使用protobuf踩坑记
2019/05/07 Javascript
使用localStorage替代cookie做本地存储
2019/09/25 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
node.js 基于 STMP 协议和 EWS 协议发送邮件
2021/02/14 Javascript
Python线程下使用锁的技巧分享
2018/09/13 Python
python 实现得到当前时间偏移day天后的日期方法
2018/12/31 Python
python爬取微信公众号文章的方法
2019/02/26 Python
Python 音频生成器的实现示例
2019/12/24 Python
Python调用.NET库的方法步骤
2019/12/27 Python
关于pytorch处理类别不平衡的问题
2019/12/31 Python
pandas中的数据去重处理的实现方法
2020/02/10 Python
爱奇艺VIP会员:大剧抢先看
2018/07/11 全球购物
实现strstr功能,即在父串中寻找子串首次出现的位置
2016/08/05 面试题
Vector, ArrayList, HashTable, HashMap哪些是线程安全的,哪些不是
2015/10/12 面试题
设计毕业生简历中的自我评价
2013/10/01 职场文书
会计专业推荐信
2013/10/29 职场文书
摄影展策划方案
2014/06/02 职场文书
实习证明格式范文
2014/10/14 职场文书
国际贸易实务实训报告
2014/11/05 职场文书
2015年世界艾滋病日活动总结
2015/03/24 职场文书
写好求职信的技巧解密
2019/05/14 职场文书
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python