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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM