Python django编程错误提示,自己编程中遇到的错误总结

本人也是初学Python和django,因此可以说是天天会遇到各种各样自己不知道或者没见过的错误。之前的时候,并没有把所有遇到的问题,收集整理起来分享给大家。但是还是希望,从现在将自己平时学习中遇到的问题分享给大家做一些参考。也许有些是正确也许是错误。也欢迎大家一起来评论交流!!!此文章本人会陆陆续续的不断进行更新和补充完善,一起加油~~~~~~~

1.AttributeError(“'str' object has no attribute 'read'”)
遇到这种提示时请尝试将json.loads()来替换json.load()

2.TypeError: 'username' is an invalid keyword argument for this function
请查看数据模型文件,数据读取等地方是否将username编写错误

3.AttributeError: 'float' object has no attribute 'split'
这种情况请查看是否某些单元格为空的情况缺少条件判断

4.ValueError: Unable to configure handler 'scprits_handler'
请检查所有'scprits_handler'的地方是否有拼写错误。或者检查'scprits_handler'在定义的时候是否没有定义成功,有时候可能缺少一个“,(逗号)”从而并没有被系统的拼写错误检查出来

5.pip install安装提示:Unknown or unsupported command 'install'

 

 


首先使用命令where pip,找到pip的安装目录,然后cd到目录下再执行pip install安装,搞定

 

 

 

 

 

 

 

 

6.UnboundLocalError: local variable 'key_value' referenced before assignment

 

 


key_value没有定义,因此我在定义的函数中添加了一句话key_value='',搞定了

 

 

 

7.NameError: name 'false' is not defined
python中的false必须要大写,将false改成False即可

8:TypeError: 'a' is an invalid keyword argument for print()
查看print(a)中a是不是写错了

9:print(test(x,y))打印出来None

 

 



print(test(11, 12))
输出结果:

 

 

 

原因是因为在定义的函数test(x,y)中没有return语句。所以在执行print(test(11,12))语句里面的test(11,12)的时候,首先调用test并传参(11,12),在test中执行print('x+y=', 11+12)然后打印输出x+y=23,然后继续执行print(test()),因为test这个方法定义的时候并没有返回值,所以默认为None,然后又打印出来一个None

10:AttributeError: 'dict' object has no attribute 'encode'
原因是因为字典无法使用encode方法进行编码,使用encode方法编码的可以是一个字符串。比如str1 = 'Hello world 你好',可以使用str1.encode(),而dict1 = {'n2':840,'la':39.98049465154441,'l':False}无法进行dict1.encode

11.configparser.DuplicateSectionError: Section 'type' already exists
在做配置文件的读写时,写入操作请检查写入的参数在配置文件中是否已经存在

12.执行文件写入的时候,发现把源文件内容清空了

原本我的代码逻辑是读取一个配置文件,判断配置文件中‘type’分组是否存在,如果不存在则添加一个分组type,并且给他设置一个name(stuno)和value(10211201)

 

 




可是我发现当我屏蔽掉read这句话之后,我的配置文件中除了新插入的数据,其他都被删除了

 

 

 

 

 

 

总结原因:当你进行文件的读操作的时候,文件中原本的内容已经被读进缓存中,这时候再对文件进行'w'写操作的时候,会将缓存中文件打开时的老数据和新增加的新数据,一块再写入进去,所以内容不会删除,看似像追加和新增。但是如果没有执行read的文件读操作,这时候缓存中其实只有本次新增加的内容,然后在‘w’执行写操作的时候,其实是覆盖,而不是追加。执行后再打开你的配置文件,发现老数据被清空了,只有本次新增加的新数据。

13.Python在用 flask 框架向前端返回 json 格式数据时,出现中文乱码
我的接口代码如下:


 

 


请求后返回结果:

 

 

 

修改代码:在顶部添加import json,中间部分将return jsonify(resu)修改为return json.dumps(resu, ensure_ascii=False)后:

 

 

 

14.Python错误提示:TypeError: 'NoneType' object is not callable的解决办法
方法在调用的时候请将()去掉


————————————————
版权声明:本文为CSDN博主「易有太极、是生两仪」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/songlh1234/article/details/82178751

posted @ 2022-03-24 16:49  赏金猎人小熊  阅读(2925)  评论(0编辑  收藏  举报