Date: 2018.6.17 端午

1、参考

2、python下编译py成pyc和pyo (文件加密)

将python文件.py编译成pyc二进制文件:

python -m py_file.py

或者通过脚本运行:

import py_compile ##单个文件编译

import compileall ##多个文件编译

py_compile.compile('path') ##path是包括.py文件名的路径

将python文件编译成pyo二进制文件:

python -O -m py_file.py

什么是pyc文件?

pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。

注意事项:pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的 python是无法执行的。

什么是pyo文件?

pyo是优化编译后的程序 python -O 源文件即可将源程序编译为pyo文件

什么是pyd文件?

pyd是python的动态链接库。

3、将Python文件转成exe封装(文件加密)

4、采用hashlib或pycrypto模块进行文本加密

hashlib模块:

import hashlib

sha1 = hashlib.sha1('文本内容') #加密

osv=sha1.hexdigest()

print(osv)

bx=bytes(osv,encoding='utf-8') #转换类型

with open('1.txt','wb') as f: #以二进制写类型打开

f.write(bx) #写入文件

get_sha1('')

pycrypto模块:

from Crypto.Cipher import AES

obj = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456')

message = "The answer is no"

ciphertext = obj.encrypt(message)

>>> ciphertext

'\xd6\x83\x8dd!VT\x92\xaa`A\x05\xe0\x9b\x8b\xf1'

>>> obj2 = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456')

>>> obj2.decrypt(ciphertext)

'The answer is no'

python将文本文件加密后输出_【Python】python文件或文本加密(4种方法)相关推荐

  1. python转换成exe后一闪而过_解决python xx.py文件点击完之后一闪而过的问题

    解决python xx.py文件点击完之后一闪而过的问题 1.问题复现: 有时候我们去点击.py文件 文件里明明有打印信息,却一闪而过,没有任何显示 比如以下内容 #!/usr/local/bin/p ...

  2. python输入一个整数倒序输出_利用Python实现倒序任意整数

    这是很早以前学习C时候做过的一个练习题,题目的要求大概是把用户输入的三位数倒序输出,比如说用户输入123,然后程序应该输出的结果是321.如果遇到用户输入100,那么程序应该输出1.然后我给扩展一下, ...

  3. python遍历文本文件统计字符个数_用python获取txt文件中关键字的数量

    缘起: 开发人员需要tomcat中一个项目在一个月的访问请求量,因其他原因只剩下查找tomcat请求日志的方法获取,刚好最近在学习python,于是就用python摸索了下: 大体思路: 1.把相应t ...

  4. python自定义列名和长度输出_关于python:如何为size()列指定名称?

    我正在GroupBy结果上使用.size(),以便计算每组中有多少项. 我希望将结果保存到一个新的列名,而不手动编辑列名数组,如何完成? 谢谢 这就是我所尝试的: grpd = df.groupby( ...

  5. 输入一个四位数将其加密后输出c语言,输入一个四位数,将其加密后输出.方法是将该数每一位的数字加9,然后除以10取余作为该位上的新数字,最后将千位上的数字和十...

    问题描述: 输入一个四位数,将其加密后输出.方法是将该数每一位的数字加9,然后除以10取余作为该位上的新数字,最后将千位上的数字和十位上的数字互换,组成加密后的新四位数. #include int m ...

  6. 输入一个四位数将其加密后输出c语言,从键盘输入一个四位数-按如下规则加密后输出...

    <从键盘输入一个四位数-按如下规则加密后输出>由会员分享,可在线阅读,更多相关<从键盘输入一个四位数-按如下规则加密后输出(3页珍藏版)>请在人人文库网上搜索. 1.作业31. ...

  7. 关于python浮点数类型错误的是_关于Python的数字类型,以下选项中描述错误的是...

    [单选题]以下程序的输出结果是: lcat =["狮子","猎豹","虎猫","花豹","孟加拉虎" ...

  8. 关于python浮点数类型错误的是_关于Python语言的浮点数类型,以下选项中描述错误的是...

    [单选题]关于Python字符串,以下选项中描述错误的是 [单选题]以下程序的输出结果是: lcat =["狮子","猎豹","虎猫",&q ...

  9. python自然对数为底的指数函数_解决python中的幂函数、指数函数问题

    最近在调代码,碰到幂函数.指数函数,总是提示 ValueError: math domain error ValueError: negative number cannot be raised to ...

  10. python打开文件不存在-Python判断文件是否存在的三种方法

    原标题:Python判断文件是否存在的三种方法 通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先判断文件是否存在. 这里将介绍三种判断文件 ...

最新文章

  1. 统计学习方法 pdf_李航统计学习方法(第三章)
  2. php 获取请求,php获取http请求的头信息的方法
  3. 虚拟成像技术_AI帝国将崛起,国内幻真虚拟成像技术第一家
  4. nv4_disp.dll 蓝屏
  5. PWN-PRACTICE-BUUCTF-9
  6. Win11如何调整任务栏大小 Win11调整任务栏大小的方法
  7. mysql 非最佳查询_Mysql 查询优化
  8. 现在市面上卖的贵州茅台镇原浆酒20元一瓶是什么酒?
  9. [C] 库函数 sprintf() 和 snprintf()
  10. android手机系统miui,使用MIUI系统MIUI将无刷机器直接安装在其他品牌的Android手机上...
  11. 希捷扩展PCIe产品组合 推出两款新闪存加速卡
  12. 【ArcGIS操作】3 数据制图篇
  13. Pausing and Resuming an Activity
  14. 一个词三个功能,较真人员少啊
  15. mybatis驼峰映射
  16. COMSOL6.0 版本新功能:求解大型瞬态声学问题
  17. 超级实用的浏览器插件
  18. 英文论文检索数据库以及英文文献下载
  19. Android开门动画和关门动画的实现
  20. 计算机行知行业英语教材,“三教”改革的先声——《行知行业英语》

热门文章

  1. 使用 Vite + 前端框架 (SolidJs,React,Svelte,Vue) 来开发 油猴脚本
  2. java计算机毕业设计高考填报信息系统源码+数据库+系统+lw文档+部署
  3. 安卓仿苹果键盘输入法_iphone输入法安卓版下载
  4. 【一起学习输入法】华宇拼音输入法开源版本解析(7)
  5. FPGA之JESD204B接口——总体概要 实例 下
  6. 从零开始搭建ABP框架(Asp .Net Boilerplate)+Oracle(11 g)
  7. 局域网内计算机共享文件到手机
  8. 多项式拟合(polyfit和polyval)
  9. 中国知名个人站长排行TOP91
  10. 数据可视化的目的 ECharts的基本使用步骤