涉及对文件数据处理,比如加解密之类的,如果耗时部分的算法是用python写的,那可以考虑这些优化点:
- 标准加解密尽可能调用预编译好的pyd,当然像AES这种一般已经是这样的了,不用关心
- 多个bytes块放数组,最后join使用
- 涉及取值的操作,用bytearray
- bytearray用来join效率比bytes差
- 编译算法代码部分为pyd 【这是能提升性能的首选点】
- 数据运算直接调用numpy
- bytearray的append只适合数字,如果要追加bytes,用extend方法
- 能用bytearray的extend就避免使用对bytes的列表join
- 通过memoryview对数据做修改并不快,但做索引快
上面总结的一些优化点,主要是针对对二进制数据做加解密这一类操作。