【Python】随机模块random & 日期时间のtime&&datetime
■ random
顾名思义,random提供了python中关于模拟随机的一些方法。这些方法都一看就懂的,不多说了:
random.random() 返回0<n<=1的随机实数
random.uniform(a,b) 返回a<n<=b的随机实数
random.randrange([start],stop,[step]) 返回序列range(start,stop,step)中随机一项
random.choice(seq) 返回序列中随机一项
random.sample(seq,n) 返回序列中n个随机且独立的项组成列表
random.shuffle(seq) 打乱序列顺序(原地变化,相当于s.reverse()这种,seq本身被打乱而不返回值)
■ time
获得当前时间,操作时间,从字符串里读取时间,将时间转化为字符串等等
时间的表示方法有很多种,比如:
字符串(最易懂的形式)
实数(表示当前时刻距离1970年1月1日0点0分0秒经过的秒数,即时间戳)
元组,比如(2008,1,21,12,2,56,0,21,0),各个字段的意义分别是 年,月,日,时,分,秒,周几(取值范围0-6),儒历日(一年中的第几天,1-366),夏令时(0或1或-1)
一些time模块的方法如下:
time.asctime([tuple]) 将元组转化为字符串,若不给出元组就以当前时间为参数,如(2016,9,10,10,58,31,5,xxx(忘记掉了),0) ==> Sat Sep 10 10:58:31 2016
time.localtime([secs]) 将秒数时间戳转化为日期元组,不填参数也是以当前时间为准
time.mktime(tuple) 将元组转化为秒数时间戳,于localtime相反
time.sleep(secs) 暂停整个进程secs秒时间,很多地方有用!
time.strptime(string) 将字符串解析为时间元组,和asctime相反,而字符串格式要求像asctime输出的那样。。
time.time() 生成秒数时间戳
time.strftime(format,tuple) 根据format指定的格式来讲元组转化成字符串,如strftime("%y-%m-%d %H:%M:%S",asctime())
几种日期格式转化示意图:
字符串 ==(strptime)==> 日期元组 ==(mktime)==>时间戳
时间戳 ==(localtime)==>日期元组 ==(asctime,strftime)==> 字符串
* 字符串和元组仅仅只是对时间做一个记录而已,并不会对日期时间的正确性做校验(比如星期几是否匹配某个日期等),所以应尽量用time提供的方法来创建时间表示,而不是自己手写一个时间元组之类的。。这样可以减少这种错误。
■ datetime
相比于time模块,datetime更加直观简洁,同时它也已经成为python的内建模块了
datetime内置以下几个类,分别用于处理各个对应的时间日期要素
● datetime.date
表示日期的类,常用属性有year,month,day
● datetime.time
表示时间的类,常用属性有hour,minute,second,microsecond
● datetime.datetime
表示日期和时间
● datetime.timedelta
表示两个时间的间隔,在构造这个类的对象时可以选择参数days,minutes,seconds和miliseconds这些。不能用months这些更高的单位
⑴ date类
D = datetime.date(年,月,日) 可以创建出一个date类对象,除此之外,还可以用D = datetime.date.today()来返回一个今天的date对象以及datetime.date.fromtimestamp(...)根据时间戳来生成一个date对象
date类默认的打印方法是YYYY-MM-DD
date类可调用的一些方法:
datetime.date.timetuple() 生成time tuple
(前略).weekday() 返回星期几(取值0-6)
.isoworkday() 返回星期几(取值1-7)
.isoformat() 返回标准格式的YYYY-MM-DD的字符串
.strftime(format) 根据指定的格式返回日期字符串
*datetime.date对象之间可以比大小,date对象相减其差值是一个timedelta对象
⑵ time类
time 由 time(23,59,59,999999)构成
time.isoformat() 给出"HH:MM:DD"格式的时间字符串
time.strftime(format) 根据自定义格式给出时间字符串
和date类一样,time也可以比大小,相减
⑶ datetime类(这个是datetime.datetime,不要搞错)
datetime类把date类和time类整合到一起,其构造方法是datetime(年,月,日[,时[,分[,秒]]])
datetime.now() 返回当前时间的datetime对象
datetime.combine(date,time) 组合一个date对象和一个time对象
datetime.strptime(string,format) 将格式字符串转化为datetime对象
此外 一些date类和time类的方法也可被datetime类对象调用,如timetuple(),weekday(),strftime(fmt)等
*strftime中的格式,除了%y-%m-%d %H:%M:%D外,还有:
%a 星期几,如Tue,Sar,Wed
%b 月份,如Apr,May.
%j 儒历日
%x YY/MM/DD格式(等于说是写了%x就代表是写了%y/%m/%d,下同)
%X HH:MM:SS格式
%c yy/mm/dd HH:MM:SS
%W 第几周
【Python】随机模块random & 日期时间のtime&&datetime的更多相关文章
- python 随机模块random
- 时间模块 time 随机模块random os模块,sys模块
时间模块 time #时间模块 import time #三种格式 #时间戳时间:是一个浮点数,以秒为单位,计算机用语 #结构化时间 :是一个元组 #用于中间转换 #格式化时间:str数据类型, 用 ...
- 2016年11月3日JS脚本简介数据类型: 1.整型:int 2.小数类型: float(单精度) double(双精度) decimal () 3.字符类型: chr 4.字符串类型:sting 5.日期时间:datetime 6.布尔型数据:bool 7.对象类型:object 8.二进制:binary 语言类型: 1.强类型语言:c++ c c# java 2.弱类型语
数据类型: 1.整型:int 2.小数类型: float(单精度) double(双精度) decimal () 3.字符类型: chr 4.字符串类型:sting 5.日期时间:datetime 6 ...
- 随机模块 random 函数的调用
随机模块 random 作用: 用于模拟或生成随机输出的模块. 用法示意: import random as R 函数名 描述 R.random() 返回一个[0, 1) 之间的随机实数 R.unif ...
- Python—时间模块(time)和随机模块(random)
时间模块 time模块 获取秒级时间戳.毫秒级时间戳.微秒级时间戳 import time t = time.time() print t # 原始时间数据 1574502460.90 print i ...
- Python全栈--7模块--random os sys time datetime hashlib pickle json requests xml
模块分为三种: 自定义模块 内置模块 开源模块 一.安装第三方模块 # python 安装第三方模块 # 加入环境变量 : 右键计算机---属性---高级设置---环境变量---path--分号+py ...
- Python 随机(random)模块的不可预测之美
1 . 概念 1.1 真.伪随机数 大部分的计算机语言都会提供 API 生成随机数,此类 API 称为随机数生成器. 计算机可以用随机数模拟现实世界中的各种随机概率问题,没有随机生成器的编程语言不是& ...
- Python:time模块/random模块/os模块/sys模块
time 模块 #常用方法 1.time.sleep(secs) (线程)推迟指定的时间运行.单位为秒. 2.time.time() 获取当前时间戳 python中时间日期格式化符号: %y 两位数的 ...
- python之模块random,time,os,sys,序列化模块(json,pickle),collection
引入:什么是模块: 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类型. 1.使用python编写的代码(.py ...
随机推荐
- Android设置View抖动动画
在应用中,有时候我们要吸引用户去点击某些按钮,比如应用市场的推荐按钮,为了能够吸引用户主动点击而且不过分的打扰用户,最好的方法就是给我们想吸引用户注意的view添加一些抖动动画,比如这张图 这里我主要 ...
- vc6.0转vs2005中字符串的问题
简单一点:就是project->Property->Configuration Property-->general-->Character Set:No Set即可.详细分析 ...
- VxWorks程序指南
******************************************* 一.任务 ******************************************* 任务状态:挂起 ...
- VME总线
简介 诞生于25年前的VME(VersaModule Eurocard)总线是一种通用的计算机总线,结合了Motorola公司Versa总线的电气标准和在欧洲建立的Eurocard标准的机械形状因子, ...
- Java代码输出是“father”还是“child”(二)
1.实例 /** * 以下代码输出的结果是 */ package com.you.model; /** * @author YouHaidong * 输出的结果 */ public class Fat ...
- java实现在线支付
国内电子商务系统实现的基本流程如下: 客户在系统内下订单 -> 系统根据订单生成支付宝接口url -> 客户通过url使用支付宝(网上银行)付款 -> 支付宝将客户的付款完成信息发送 ...
- iOS - Quartz 2D 二维绘图
1.Quartz 2D 简介 Quartz 2D 属于 Core Graphics(所以大多数相关方法的都是以 CG 开头),是 iOS/Mac OSX 提供的在内核之上的强大的 2D 绘图引擎,并且 ...
- Eclipse去除网上复制下来的来代码带有的行号
一.正则表达式去除代码行号 作为开发人员,我们经常从网上复制一些代码,有些时候复制的代码前面是带有行号,如: MyEclipse本身自带有查找替换功能,并且支持正则表达式替换,使用正则替换就可以很容易 ...
- mysql5.7安装教程
1, 下载mysql5.7的安装包mysql-5.7.17-winx64.zip,直接解压到安装目录 2, 进入mysql目录,在里面新建data目录 3, 修改mysql的my.ini文件,指定ba ...
- Emacs配置(考场必备)(Emacs)
最近有几次离开自己一直坐着的座位,去别的机房考试了. 于是猛然想起来要记一记Emacs的简洁配置了. 算是把NOIP残存的记忆再拾一点起来...... 附上一些解释 (global-set-key [ ...