015 Python语法之文件结束

来源:互联网 发布:网络女主播闪现 编辑:程序博客网 时间:2024/06/06 20:36

1. 数据分割问题

  1. 用二进制(“rb”)进行打开文件
  2. 然后用decode(“gbk”, errors=”ignore”)
  3. 这个时候就可以看出用什么对数据进行分割的了

2. bytes数据类型(二进制类型)

  1. b”abcd\x64”这个是二进制数据,打印出来为b’abcdd’
  2. 二进制数据不能对某个元素赋值,和字符串一样
  3. abcd是明确字符,\x开头的是16进制的字符

3. 二进制编码 encode(“utf-8”)

mystr = "锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦。"print(mystr.encode("utf-8"))

4. 二进制解码decode(“utf-8”,errors=”ignore”)

print("锄禾日当午".encode("utf-8").decode("utf-8",errors="ignore"))

5. 进制

进制 描述 b 二进制 o 八进制 x 十六进制

进制注意点

  1. 进制不能超过进制最大数

6. 加密解密

  1. 加密解密可以通过数据挪位

加密

# 1. 路径orginPath = r"G:\尹成\mine\data\day04\机锋2300W完整版\jfEmail.txt"objectPath = r"G:\尹成\mine\data\day04\机锋2300W完整版\jfEmailJiaMi.txt"# 2. 文件orginFile = open(orginPath, "rb")objectFile = open(objectPath, "wb")# 3. 数据处理while True:    ch = orginFile.read(1)    if not ch:        break    if chr(ord(ch)) != "\n":  # 如果是换行就不加密        ch = bytes(chr(ord(ch) ^ 2), encoding="utf-8")    objectFile.write(ch)# 4. 文件关闭orginFile.close()objectFile.close()

解密

# 1. 路径orginPath = r"G:\尹成\mine\data\day04\机锋2300W完整版\jfEmailJiaMi.txt"objectPath = r"G:\尹成\mine\data\day04\机锋2300W完整版\jfEmailJieMi.txt"# 2. 文件orginFile = open(orginPath, "rb")objectFile = open(objectPath, "wb")# 3. 数据处理while True:    ch = orginFile.read(1)    if not ch:        break    if chr(ord(ch)) != "\n":  # 如果是换行就不加密        ch = bytes(chr(ord(ch) ^ 2), encoding="utf-8")    objectFile.write(ch)# 4. 文件关闭orginFile.close()objectFile.close()

二进制加密

  1. 二进制加密汉字需要进行正则表达式处理,因为汉字占两个字节
  2. 纯英文没有问题

7. 哈希算法提速

1. 通过字典进行哈希算法加速,原理是通过键拿值

总结

今天做了一些优化的问题,内存不够真伤。
原创粉丝点击