关于python中的字符串编码理解
python2.x 中中间编码为unicode,一个字符串需要decode为unicode,再encode为其它编码格式(gbk、utf8等)
以gbk转utf8为例:
s = "我是字符串" #gbk编码
s = s.decode('gbk').encode('utf8') #将gbk编码转换为utf8编码,需要先转换为unicode中间编码,再转换为utf8编码
具体过程为:
s | gbk --- decode('gbk') ---> s | unicode --- encode('utf8') ---> s | utf8
代码中的 显式字符串 默认编码为代码文件的编码格式,如果开头没有#coding=[]声明,则默认编码为ascii型(所以存储中文会有问题)
如果开头声明了,例如:
#coding=gbk
则代码中一个显式字符串,例如:
s = '我是字符串'
字符串s会被编码成 gbk 格式存储
详见:python字符串编码及乱码解决方案 讲的不错
Python字符编码详解 这个也可以看一看
Freecode# : www.cnblogs.com/yym2013
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下