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. PHP数组相关算法

    一.排序算法 1. 冒泡排序 2. 选择排序 二.查找算法 1. 遍历 2. 二分查找

  2. 201871010112-梁丽珍《面向对象程序设计(java)》第六、七周学习总结

    项目 内容 这个作业属于哪个课程 <任课教师博客主页链接>    https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址> ...

  3. zz视频分割在移动端的算法进展综述

    视频分割在移动端的算法进展综述 语义分割任务要求给图像上的每一个像素赋予一个带有语义的标签,视频语义分割任务是要求给视频中的每一帧图像上的每一个像素赋予一个带有语义的标签. 视频分割是一项广泛使用的技 ...

  4. git npm包管理

    #Node # node 一.安装nodejs 下载地址:http://nodejs.cn/download/ 二.安装git 下载地址:https://git-scm.com/download/wi ...

  5. [LeetCode] 98. Validate Binary Search Tree 验证二叉搜索树

    Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...

  6. 简单模仿QQ聊天界面

    首先看一下最终的效果,显示了消息时间,用户昵称,用户头像. 大致实现方法: 用最简单的ListView显示消息内容. 不同的用户使用不同的消息布局文件,从而达到头像左右显示的效果,如上图有2个用户&q ...

  7. C++ 版本ORM访问数据库之ODB访问oracle的Demo(三)

    ODB的组成部分: 1: 操作系统的ODB编译器 2: odb核心库libodb 3: 各种数据库的相关链接库 使用ODB访问数据需要的库和头文件(不懂, 请看https://www.cnblogs. ...

  8. Git的学习总结

    首先,Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.  Git 也是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件. ...

  9. 表单只有一项 input 时按回车键会提交表单

    在 Vue 中 使用 Element UI,使用表单  el-form 只有一个  el-input  项,使用  @keyup.enter.native 来处理回车事件. 结果发现按下回车时页面总会 ...

  10. Java代码中对IP进行白名单验证

    来自:https://www.cnblogs.com/shinubi/p/6723003.html public class ipUtil { // IP的正则,这个正则不能验证第一组数字为0的情况 ...