Python从0到POC编写--模块(三)

base64模块:

base64模块是用来对字符进行base64编码解码

这个大家应该都比较熟悉了。

常用的两个方法有 b64encode 和 b64decode

b64encode 进行base64编码

编码:

复制代码
>>> import base64
>>> string = 'hello world'
>>> r = base64.b64encode(string.encode('utf8'))
>>> print(r)
>>> # 输出 b'aGVsbG8gd29ybGQ='  b 表示 bytes 类型

进行编码时,要先进行 utf-8 编码,不然会报错。


解码:

复制代码
>>> import base64
>>> string = 'aGVsbG8gd29ybGQ='
>>> r = base64.b64decode(string)
>>> print(r)
>>> # 输出 b'hello world'

解码可以不用进行 utf-8 编码


datetime模块:

datetime 是一个操作时间的模块,

datetime模块有几个常用的类:

datetime.date 表示日期的类。常用的属性有year, month, day

datetime.time 表示时间的类。常用的属性有hour, minute, second, microsecond

datetime.datetime 表示日期时间。


date类:

表示一个日期,由年、月、日组成

year 的范围是 1, 9999

month 的范围是 1, 12 (月份是从1开始的)

day 根据给定的year, month参数来决定。 例如闰年2月份有29天


date类 一些常用的类方法与类属性:

date.today() 获取当前本地日期

date.weekday() 返回 weekday,如果是星期一,返回0;如果是星期2,返回1,以此类推

date.isoweekday() 返回 weekday,如果是星期一,返回1;如果是星期2,返回2,以此类推;

例:

复制代码
>>> import datetime
>>> time = datetime.date.today()  #  获取当前本地日期
>>> print(time)
>>> # 输出 2019-06-09

可以使用 strftime() 来处理格式化字符

例:

复制代码
>>> import datetime
>>> time = datetime.datetime.now().strftime('%Y-%m-%d')  #  日期格式化
>>> print(time)
>>> # 输出 2019-06-09

时间日期格式化符号:

字符 功能
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)

所演示的python版本是 3.7

有些 datetime模块 函数已经取消了,

有时候可能使用 time 模块更加方便一点。


random模块:

random 随机数模块

生成随机小数,默认 0-1 之间

例如:

复制代码
>>> import random 
>>> print(random.random())  # 随机大于 0 且小于 1 之间的小数
>>> # 输出 0.07027106608172073

生成随机整数 randint():

复制代码
>>> import random 
>>> print(random.randint(1,5))  # 随机一个大于等于 1 且小于等于 5 的整数
>>> # 输出 2

随机抽取列表中的一个元素:

复制代码
>>> import random 
>>> print(random.choice(['123','abc',666,[7,7,7]]))  # 随机一个元素
>>> # 输出 123

打乱列表顺序:

复制代码
>>> import random 
>>> lis = [1,2,3,4,5,6]
>>> random.shuffle(lis)  #  打乱顺序
>>> # 输出  [6, 2, 5, 1, 3, 4]
相关推荐
可乐ea2 分钟前
【知识获取与分享社区项目 | 项目日记第 19 天】基于 Elasticsearch 实现关键词检索与业务权重排序
java·大数据·spring boot·mysql·elasticsearch·搜索引擎·全文检索
装不满的克莱因瓶5 分钟前
使用 PyTorch Tensor 的相关数据处理
人工智能·pytorch·python·深度学习·机器学习·ai
如烟花的信页15 分钟前
易盾点选逆向分析
javascript·爬虫·python·js逆向
ZC跨境爬虫21 分钟前
跟着 MDN 学 JavaScript day_2:JavaScript 初体验
开发语言·前端·javascript·学习·ecmascript
金銀銅鐵26 分钟前
用 Tkinter 实现一个简单的罗马数字转化工具
后端·python
假如让我当三天老蒯36 分钟前
useCallback 详细解释(从原理到用法)(自学用)
前端·react.js
ckjoker42 分钟前
四大AI Agent架构拆解:我手敲了一个迷你版,发现了7条可迁移的设计原则
python·agent
小二·43 分钟前
Python 异步编程深度解析:Async/Await 实战
网络·python·github
zzz_23681 小时前
【Spring】面试突击系列(一):IoC 与 DI 深度解析
java·spring·面试