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 17 Python
详解Python的Django框架中的通用视图
May 04 Python
Python爬虫框架Scrapy常用命令总结
Jul 26 Python
PyTorch读取Cifar数据集并显示图片的实例讲解
Jul 27 Python
python按时间排序目录下的文件实现方法
Oct 17 Python
解决Pycharm运行时找不到文件的问题
Oct 29 Python
将pandas.dataframe的数据写入到文件中的方法
Dec 07 Python
python虚拟环境迁移方法
Jan 03 Python
Python中pymysql 模块的使用详解
Aug 12 Python
Python搭建代理IP池实现接口设置与整体调度
Oct 27 Python
浅谈python的elementtree模块处理中文注意事项
Mar 06 Python
matplotlib之属性组合包(cycler)的使用
Feb 24 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 disk_free_space 返回目录可用空间
2010/05/10 PHP
yii实现CheckBox复选框在同一行显示的方法
2014/12/03 PHP
一个非常完美的读写ini格式的PHP配置类分享
2015/02/12 PHP
php返回字符串中所有单词的方法
2015/03/09 PHP
php实现无限级分类查询(递归、非递归)
2016/03/10 PHP
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
基于jquery的下拉框改变动态添加和删除表格实现代码
2020/09/12 Javascript
jQuery实现文本展开收缩特效
2015/06/03 Javascript
浅谈js 闭包引起的内存泄露问题
2015/06/22 Javascript
js+html制作简单验证码
2017/02/16 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
2017/05/20 Javascript
Angularjs过滤器实现动态搜索与排序功能示例
2017/12/13 Javascript
node.js用fs.rename强制重命名或移动文件夹的方法
2017/12/27 Javascript
vue 动态改变静态图片以及请求网络图片的实现方法
2018/02/07 Javascript
JS实现自定义弹窗功能
2018/08/08 Javascript
浅谈vue 单文件探索
2018/09/05 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
PWA介绍及快速上手搭建一个PWA应用的方法
2019/01/27 Javascript
JS实现提示框跟随鼠标移动
2019/08/27 Javascript
浏览器JavaScript调试功能无法使用解决方案
2020/09/18 Javascript
Python中处理字符串之isalpha()方法的使用
2015/05/18 Python
Python常用知识点汇总
2016/05/08 Python
Python实现连接postgresql数据库的方法分析
2017/12/27 Python
django文档学习之applications使用详解
2018/01/29 Python
Django 请求Request的具体使用方法
2019/11/11 Python
python实现多进程按序号批量修改文件名的方法示例
2019/12/30 Python
Python多线程Threading、子线程与守护线程实例详解
2020/03/24 Python
python 用opencv实现图像修复和图像金字塔
2020/11/27 Python
移动Web—CSS为Retina屏幕替换更高质量的图片
2012/12/24 HTML / CSS
Canvas中设置width与height的问题浅析
2018/11/01 HTML / CSS
一加手机美国官方网站:OnePlus美国
2019/09/19 全球购物
通信工程毕业生求职信
2013/11/16 职场文书
售房协议书
2014/08/19 职场文书
餐饮店长岗位职责
2015/04/14 职场文书
linux下导入、导出mysql数据库命令的实现方法
2021/05/26 MySQL
详解Java实现数据结构之并查集
2021/06/23 Java/Android