1、time模块:

time模块是普通的时间模块

在python的三种时间表现形式:
1.时间戳: 给电脑看的。
- 自1970-01-01 00:00:00到当前时间,按秒计算,计算了多少秒。 2.格式化时间(Format String): 给人看的
- 返回的是时间的字符串 2002-01-11 3.格式化时间对象(struct_time):
- 返回的是一个元组, 元组中有9个值:
9个值分别代表: 年、月、日、时、分、秒、一周中第几天,一年中的第几天,夏令时(了解) 1)获取时间戳:
import time

# 获取时间戳(******)计算时间时使用
print(time.time()) #1573895872.453043 ,给电脑看的

2)格式化时间:

# 获取年月日
print(time.strftime('%Y-%m-%d')) #-- # # 获取年月日时分秒
print(time.strftime('%Y-%m-%d %H:%M:%S')) #-- ::
# # %X == %H:%M:%S
print(time.strftime('%Y-%m-%d %X')) #-- :: # 获取年月
print(time.strftime('%Y/%m')) #/

3) 获取时间对象:

print(time.localtime())  #time.struct_time(tm_year=2019, tm_mon=11, tm_mday=16, tm_hour=17, tm_min=23, tm_sec=36, tm_wday=5, tm_yday=320, tm_isdst=0)
print(type(time.localtime())) #<class 'time.struct_time'>
time_obj = time.localtime()
print(time_obj.tm_year)
print(time_obj.tm_mon)

将时间对象转为格式化时间:

import datetime
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())

将字符串格式的时间转为时间对象:

import time
res = time.strftime('2019-01-01, %Y-%m-%d')
print(res)

2、datetime 模块

datetime 模块是基于time模块封装的一种比较便利的时间模块

import datetime

# 获取当前年月日
print(datetime.date.today()) # 获取当前年月日时分秒
print(datetime.datetime.today()) time_obj = datetime.datetime.today()
print(type(time_obj))
print(time_obj.year)
print(time_obj.month)
print(time_obj.day)
#UTC
print(time_obj.weekday()) # 0-6
#ISO
print(time_obj.isoweekday()) # 1-7 #UTC时区
#北京时间
print(datetime.datetime.now()) #格林威治
print(datetime.datetime.utcnow())
日期/时间的计算:
日期时间 = 日期时间 “+” or “-” 时间对象
时间对象 = 日期时间 “+” or “-” 日期时间
# 日期时间:
current_time = datetime.datetime.now()
print(current_time) # 时间对象
# 获取7天时间
time_obj = datetime.timedelta(days=7)
print(time_obj) # 获取当前时间7天后的时间
# 日期时间 = 日期时间 “+” or “-” 时间对象
later_time = current_time + time_obj
print(later_time) # 时间对象 = 日期时间 “+” or “-” 日期时间
time_new_obj = later_time - current_time
print(time_new_obj)

3、random 模块:

random模块主要用于随机获取指定的值

随机获取1—9中任意的整数:

import random
res = random.randint(1, 9)
print(res)

默认获取0——1之间任意小数

res2 = random.random()
print(res2)

洗牌:

#random.shuffle()可以对某个有索引的可迭代对象进行乱序。

需要注意的是:不可变类型和无序数据类型不能乱序

# 将可迭代中的值进行乱序
list1 = ['红桃A', '梅花A', '红桃Q', '方块K']
random.shuffle(list1)
print(list1)

随机获取可迭代对象中的某一个值:

list1 = ['红桃A', '梅花A', '红桃Q', '方块K']
res3 = random.choice(list1) #随机获取一个值
print(res3)

具体例题:

# 需求: 随机验证码
'''
需求:
大小写字母、数字组合而成
组合5位数的随机验证码
''

import random

def get_code(n):
code1 = ''
for line in range(n):
# 随机生成一个小字母
res1 = random.randint(97, 122)
lower_str = chr(res1) # 根据ASCII码数字对应小字母
# 随机生成一个大字母
res2 = random.randint(65, 90)
upper_str = chr(res2) # 根据ASCII码数字对应大字母
# 随机生成一个数字
res3 = random.randint(0, 9) # 随机生成一个整数
number = str(res3)
code_list = [lower_str, upper_str, number]
code_choice = random.choice(code_list) # 从列表中随机去一个元素
code1 += code_choice
print(code1)
print(len(code1))
return code1 get_code(10)

注:在ASCII码中,数字范围:97-122,对应小写字母;数字范围65-90,对应大写字母。

常用的python内置模块的更多相关文章

  1. python内置模块(time模块)

    常用的python内置模块 一.time模块 在python的三种时间表现形式: 1.时间戳,给电脑看的. - 自1970-01-01 00:00:00到当前时间,按秒计算,计算了多少秒. impor ...

  2. python内置模块[re]

    python内置模块[re] re模块: python的re模块(Regular Expression正则表达式)提供各种正则表达式的匹配操作,在文本解析.复杂字符串分析和信息提取时是一个非常有用的工 ...

  3. python 内置模块续(二)

    目录 python 内置模块补充 1.hashlib模块 简易使用: 高级使用: 进阶使用: 加盐处理: 校验文件一致性 2.logging日志模块 日志等级 常用处理 "四大天王" ...

  4. python内置模块(4)

    这一部分是python内置模块系列的最后一部分,介绍了一些小巧有用的内置模块. 目录: 1.random 2.shelve 3.getpass 4.zipfile 5.tarfile 6.bisect ...

  5. 常用的Python字符串常量

    下面是一些常用的Python字符串常量string.digits:包含0-9的字符串string.letters:包含所有大小写字母的字符串 string.lowercase:所有小写字母string ...

  6. Python学习笔记【第八篇】:Python内置模块

    什么时模块 Python中的模块其实就是XXX.py 文件 模块分类 Python内置模块(标准库) 自定义模块 第三方模块 使用方法 import 模块名 form 模块名 import 方法名 说 ...

  7. Python内置模块与标准库

    Python内置模块就是标准库(模块)吗?或者说Python的自带string模块是内置模块吗? 答案是:string不是内置模块,它是标准库.也就是说Python内置模块和标准库并不是同一种东西. ...

  8. 我常用的 Python 调试工具 - 博客 - 伯乐在线

    .ckrating_highly_rated {background-color:#FFFFCC !important;} .ckrating_poorly_rated {opacity:0.6;fi ...

  9. python内置模块[sys,os,os.path,stat]

    python内置模块[sys,os,os.path,stat] 内置模块是python自带功能,在使用内置模块时,需要遵循 先导入在 使用 一.sys 对象 描述 sys.argv 命令行参数获取,返 ...

随机推荐

  1. CentOS 7下简答搭建DNS服务器

    一.DNS相关介绍 DNS(Domain Name System)域名系统协议,作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用挨个记住IP地址.通过主机名,最终得到 ...

  2. input子系统四 input事件处理【转】

    转自:https://blog.csdn.net/qwaszx523/article/details/54139897 转自http://blog.csdn.net/coldsnow33/articl ...

  3. Ubuntu安装MDK

    1 环境部署 [x] Ubuntu 18.04 [x] Wine 3.0.4 1.0 查看CPU信息 lscpu 序号 属性 描述 1 架构 x86_64 2 CPU 运行模式 32-bit, 64- ...

  4. Flask框架整理及配置文件

    阅读目录 Flask目录结构(蓝图) pro_flask包的init.py文件, 用于注册所有的蓝图 manage.py文件,作为整个项目的启动文件 views包中的blog.py,必须要通过sess ...

  5. CF1245 A. Good ol' Numbers Coloring(java与gcd)

    题意:给定数字A和数字B,问是否满足gcd(A,B)==1. 思路:可以直接写函数gcd.也可以用大数自带的gcd功能. 代码1: /* @author nimphy @create 2019-11- ...

  6. day38_8_22数据库(navicat操作)

    补充: exist存在EXISTS关字键字表示存在.在使用EXISTS关键字时,内层查询语句不返回查询的记录,而是返回一个真假值,True或False. 当返回True时,外层查询语句将进行查询当返回 ...

  7. MyBatis 插入记录同时获取主键

    MyBatis 插入记录同时获取主键 MyBatis 插入记录同时获取主键的系统界面 useGeneratedKeys 属性 keyProperty 属性 keyColumn 属性 selectKey ...

  8. zz在自动驾驶研发中充分发挥数据的潜能

    本次分享内容提纲 数据标注 数据驱动开发 数据驱动决策 前言 上图这是我加入小马智行之前的一个小故事.这不断的提醒我,人工智能需要有足够的数据量,并且充分发挥这些数据的潜能,是我们作为人工智能公司的一 ...

  9. 线段树模板(无lazy优化)

    区间修改与区间查询问题 模板: int ans; struct node{ int l,r,v; node(){v=;} }tree[LEN*]; int arr[LEN]; //建树 void bu ...

  10. 【转】Java 泛型

    转载:https://www.cnblogs.com/lwbqqyumidi/p/3837629.html. 一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: public ...