5.文件操作

文件操作

编码表

  • ASCII码

    基于英文的编码,一个字符占一个字节

  • GBK / GB2312

    基于中文的编码,一个汉字字符占两个字节

  • unicode

    基于全球语言的编码,一个字符占四个字节

  • utf-8

    基于unicode的压缩,一个字符占三个字节

编码/解码

  • 编码

    # 将字符串str1编码成UTF-8格式的字节序列
    str1 = "一起加油!"
    str2 = str1.encode("UTF-8")
    print(str2)
    
    # 再将字节序列str2解码按照UTF-8格式解码成对应字符
    str3 = str2.decode("UTF-8")
    print(str3)
    

覆盖写入:w

  • 以字符方式覆盖写入:w

    f = open("test2", mode="w", encoding="UTF-8")
    f.write("6666666")
    f.close()
    
  • 以字节方式覆盖写入:wb

    f = open("test1", mode="wb")
    f.write("6666666".encode("UTF-8"))
    f.close()
    

追加写入:a

  • 以字符方式追加写入:a

    f = open("test2", mode="a", encoding="UTF-8")
    f.write("6666666\n")
    f.close()
    
  • 以字节方式追加写入:ab

    f = open("test1", mode="ab")
    f.write("\n6666666".encode("UTF-8"))
    f.close()
    

读取:r

  • 以字符方式读取:r

    f = open("test2", mode="r", encoding="GBK")
    s1 = f.read()
    f.close()
    print(s1)
    
  • 以字节方式读取:rb

    f = open("test2", mode="rb")
    s1 = f.read().decode("GBK")
    f.close()
    print(s1)
    

打开文件的另一种方式

# 第一种
f = open("test2", mode="r", encoding="GBK")
s1 = f.read()
f.close()
print(s1)

# 第二种
s1 = ''
with open("test2", mode="r", encoding="GBK") as f:
    s1 = f.read()
print(s1)
posted @   WangYao_BigData  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示