python学习十一:python常用模块使用,如 加密模块pyarmor,时间模块time等

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 这篇文章介绍了Python中两个常用模块的使用:加密模块pyarmor用于保护代码,以及时间模块time用于处理时间相关的功能。

前言

整理一下经常使用到的模块

一、加密模块pyarmor

在公司上班的时候,有一次要发布python代码,设计到对代码的保密,需要进行加密。因此对python代码加密需要用到pyarmor模块。
先进行安装pyarmor 模块
pip install pyarmor 默认安装到全局。
安装完就可以加密了,我这里通过案例进行笔记。

实例 1: 加密脚本

# 使用 obfuscate 加密路径 `examples/simple` 的下面的所有脚本
pyarmor obfuscate --recursive examples/simple/queens.py

# 加密后的脚本存放在 `dist`
cd dist
# 运行加密脚本
python queens.py

# 运行加密需要的所有文件都在 `dist` 下面,压缩之后就可以发给客户
zip queens-obf.zip .

# 如果需要设置加密脚本的使用期限,那么
cd /path/to/pyarmor

# 使用命令 licenses 生成一个有效期到 2020-10-01 的授权文件,存放在 licenses/r001 下面
pyarmor licenses --expired 2020-10-01 r001

# 使用 --with-license 指定上面生成的许可文件
pyarmor obfuscate --recursive --with-license licenses/r001/license.lic examples/simple/queens.py

# 压缩加密脚本给客户
cd dist
zip queens-obf.zip .

实例 2: 加密包(Package)

有一个项目 project,里面有一个路径 examples/simple。加密examples下的所有python文件。
首先说明一下,python加密的是一个包,在examples目录下,必须有一个 _init _.py文件。有了这个文件,在python里才能称为一个包。这也是区分 python包和普通文件夹 的重点。

  1. 加密在路径 examples 里所有 的 Python 脚本,也就是加密该路径里的代码。
    pyarmor obfuscate --recursive output=dist/examples examples/__init__.py
    参数解释:
    obfuscate:加密。
    –recursive:递归加密。
    –output:输出 加密后的文件所在地。
    examples/_init _.py: 要加密的包

  2. 加密后的脚本存放在 dist,如果不写 output 参数,会默认放到 dist 下面。

二、时间模块 time

相关文章
|
21天前
|
机器学习/深度学习 Python
堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能
本文深入探讨了堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能。文章详细介绍了堆叠的实现步骤,包括数据准备、基础模型训练、新训练集构建及元学习器训练,并讨论了其优缺点。
41 3
|
2天前
|
Python
Python Internet 模块
Python Internet 模块。
99 74
|
1天前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
20天前
|
算法 数据安全/隐私保护 开发者
马特赛特旋转算法:Python的随机模块背后的力量
马特赛特旋转算法是Python `random`模块的核心,由松本真和西村拓士于1997年提出。它基于线性反馈移位寄存器,具有超长周期和高维均匀性,适用于模拟、密码学等领域。Python中通过设置种子值初始化状态数组,经状态更新和输出提取生成随机数,代码简单高效。
102 63
|
21天前
|
持续交付 Python
如何在Python中自动解决模块和包的依赖冲突?
完全自动解决所有依赖冲突可能并不总是可行,特别是在复杂的项目中。有时候仍然需要人工干预和判断。自动解决的方法主要是提供辅助和便捷,但不能完全替代人工的分析和决策😉。
|
3天前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
7天前
|
存储 程序员 Python
Python学习的自我理解和想法(2)
今日学习Python第二天,重点掌握字符串操作。内容涵盖字符串介绍、切片、长度统计、子串计数、大小写转换及查找位置等。通过B站黑马程序员课程跟随老师实践,非原创代码,旨在巩固基础知识与技能。
|
6天前
|
程序员 Python
Python学习的自我理解和想法(3)
这是学习Python第三天的内容总结,主要围绕字符串操作展开,包括字符串的提取、分割、合并、替换、判断、编码及格式化输出等,通过B站黑马程序员课程跟随老师实践,非原创代码。
|
3天前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。
|
2天前
|
存储 安全 索引
Python学习的自我理解和想法(8)
这是我在B站千锋教育学习Python的第8天,主要内容是元组。元组是一种不可变的序列数据类型,用于存储一组有序的元素。本文介绍了元组的基本操作,包括创建、访问、合并、切片、遍历等,并总结了元组的主要特点,如不可变性、有序性和可作为字典的键。由于开学时间紧张,内容较为简略,望见谅。