首页IT科技异常代码object(AttributeError: ‘bytes‘ object has no attribute ‘encode‘异常解决方案)

异常代码object(AttributeError: ‘bytes‘ object has no attribute ‘encode‘异常解决方案)

时间2025-05-04 23:03:21分类IT科技浏览4991
导读:AttributeError: bytes object has no attribute encode是:“字节”对象没有属性的编码的意思。...

AttributeError: bytes object has no attribute encode是:“字节            ”对象没有属性的编码的意思            。

很明显           ,是编码格式的问题                  ,例如:已经是byte格式的字符串类型      ,二次进行encode的时候就会出现这个bug           ,示例如下:

str_info = Hello World! print(str_info) # byte字符串-utf-8 str_info = str_info.encode("utf-8") print(str_info) # byte字符串-GBK str_info = str_info.encode("gbk") print(str_info)

异常的报错效果如下:

其实异常说的是比较明显的                 ,属性误差:【Attribute Error】      ,既然我们知道了问题所在      ,那么在获取数据的时候就要看看是什么编码格式的                 ,一般情况下数据交流都是【UTF-8】的字符串编码格式            ,python里面Unicode编码格式      ,课时我们操作的时候直接写代码就默认不会出现格式错误                 ,说明只有在api操作的时候才会出现这样的问题            ,在字符串操作的时候可以限定一下所有的数据交流格式为【UTF-8】即可                 。偶尔出现中文的问题在去单独处理即可      。

编码格式也就一般使用这两种,但是大多数程序员都会默认的将项目改成【UTF-8】的                 ,就连正常操作数据库的时候你能看到也会写到编码格式改成【UTF-8】都是心照不宣的                  ,如果出现这类需要格式转化的情况,放心           ,对方肯定是一个新手程序员                  ,我们要以大哥哥的心态来帮扶新进的程序员小弟弟们      ,大家的技术快速成长           ,才能更好的为祖国建设贡献一份力量      。

报错叫做【Attribute Error】                 ,这个报错还可能是重写的函数有问题      ,例如:初始化的时候使用的是:【__init__】这里不是一个下划线      ,是两个下划线                 ,如果你使用一个下划线也会报错的                 。

我们可以初始化一个类测试一下:

class demo: """ 正常定义一个类            ,正常写初始化函数 """ def __init__(self): print(666) # 调用的使用少写了一个下划线           。 demo().__init_()

从下图就能看出来      ,由于我们在调用的过程中少写了一个下划线                 ,所以报错了            ,异常为: 【Attribute Error】,具体的异常描述:demo object has no attribute __init_                 ,他就是一个:特定对象类型没有访问属性                  ,我们没有正常使用初始化函数,故而直接报错      。

我们知道问题           ,再去复现问题                  ,很多时候通过这样的操作我们就能对某个知识点彻底的了解      ,攻克           ,老师很多时候找bug快就是因为看到了无数的学生bug                 ,挨个解决过来的      ,所以很多异常看一眼就明确问题点      ,根据问题点进行分析                 ,查找问题            ,这样解决问题可能就是分分钟的事情                  。

【Attribute Error】异常是一个范围异常      ,其实还有很多情况会出现这个异常提示           。我们上面那个参数异常也是报的这个异常为前缀。

这里小总结了一下三个可能出现这个异常的情况                 ,如下:

1           、属性名称拼写错误

2                  、调用不存在的属性

3      、模块属性调用错误

有兴趣的可以自己写一个关于各类异常的博客            ,也能为更多的人创造价值,毕竟每个人的工作范围都不一样                 ,出现的异常也是千奇百怪                  ,大家都发一发,在找答案的时候也会很效率           ,创造价值                  。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
组合和继承的区别 在什么情况下使用(多组合少继承) 命令行vi编辑命令(vipw命令 – 编辑某些配置文件)