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]
相关推荐
AC赳赳老秦1 分钟前
文案策划提效:OpenClaw批量生成活动文案、宣传海报配文,适配不同渠道调性
java·大数据·服务器·人工智能·python·deepseek·openclaw
卷帘依旧4 分钟前
React Fiber介绍
前端
_codemonster5 分钟前
系统分析师系列目录
java·网络·数据库
研☆香7 分钟前
es6的新特性介绍
前端·ecmascript·es6
甄心爱学习15 分钟前
【项目实训】法律文书智能摘要系统5
python·github
带刺的坐椅20 分钟前
Spring AI 2.0 GA 倒计时:先别急,来看看 Java AI 框架的另一条路
java·spring·ai·llm·agent·solon
烟雨江南aabb25 分钟前
Python第四弹:python进阶-匿名函数和内置函数
开发语言·python
peepeeman41 分钟前
vue组件透传
前端·javascript·vue.js
TE-茶叶蛋42 分钟前
Java 8 引入的Stream API-stream()
java·windows·python
小陈的进阶之路43 分钟前
Python系列课(9)——面向对象
开发语言·python