模块分类
- 标准库
- python解释器自带的, sys, os等
- 开源模块
- 比如selenium中的测试框架
- 自定义模块
- 比如自己封装的测试框架
时间格式
- 时间戳
- 当前时间减去1970年1月1日00:00:00.
- time.time()
- struct_time 转换成时间戳
- mktime()
- struct_time(返回结果以tuple的方式呈现)
- 时间戳转换成struct_time: time有两种方式
- gmtime() : 把时间戳传进去; 不传参数的话默认把当前时间传进去, 转换结果会是UTC时区
- localtime() : 结果为UTC+8时区
- 格式化的字符串转换成struct_time
- strptime('格式化的字符串', '格式') ---> struct_time
- 时间戳转换成struct_time: time有两种方式
- 格式化的字符串
- struct_time 转换成格式化的字符串
- strftime('格式', stuct_time) ---> 格式化的字符串
- struct_time 转换成格式化的字符串
strptime(), 格式中或是换了各个字母的位置, 系统会按照字母的位置去抓取代表其意义的值, 而不是抓取对应位置的值.
比如下图中, %d 代表tm_day, 这个字母没有放在月份后面, 而是放在小时后面, 但是它抓取的值仍然是代表天的20(day)而不是对应位置上的31(minute).
import time
x = time.localtime(123213123)
print(x) print(x.tm_year)
print('this is 1973 day: %d' %x.tm_yday) print(time.strftime('%Y-%m:%d %H:%M:%S', x)) print(time.strptime('2016-08:20 14:31:52', '%Y-%m:%d %H:%M:%S'))
import datetime # 当前时间后三天
a = datetime.datetime.now()+datetime.timedelta(3) # 当天时间+3天. timedelta()不能单独用, 需要和now()联用
print(a) # 当前时间前三个小时
b = datetime.datetime.now()+datetime.timedelta(hours = -3)
print(b)