本人也是初學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