摘要:解決方案同上,解決方案同上,中出現類似之類的報錯這一類問題主要是在代碼中有中文輸入,這個解決方案是在代碼開頭加上。不然凡是輸入中文輸入法下的字符就會報錯。
使用python會出現各種各樣的錯誤,以下是Python常見的錯誤以及解決方法。
1.ValueError: ‘Conv2d_1a_3×3’ is not a valid scope name這個是剛遇到的問題,在LZ自己手打Inception net的時候,想賦一個名字的時候出錯,其實這就是命名錯誤的問題,如果仔細看“×”是我在中文下打的符號,python是不認的,解決方案是使用英文字母”x“代替,錯誤即可解決,而且也能看到使用的卷積核的大小。
2.IndentationError:excepted an indented block遇到這個問題簡直是要哭了,因為并不是語法錯誤的問題,而是你代碼書寫規范的問題。因為Python是一個對代碼縮進非常敏感的語言,你的循環結構就可能是依靠縮進的形式來表示的。最常見的問題就是TAB和space鍵的混用,這個是很容易報錯的,而且肉眼很難分辨出來,有的代碼編輯器可以選擇顯示空格,即便是這樣,也很難找到到底哪里有問題。
其實,上面的報錯還有一個原因經常遇到,就是無首行縮進,例如寫if語句是,后面加冒號后如果直接換行,好的代碼編輯器會自動首行縮進,但有些代碼編輯器可能沒有這個功能,這是需要你手動縮進,這是最好養成習慣,不要連續敲幾次空格鍵,直接一下TAB就可以了,保持代碼風格的一致在Python的使用中是非常重要的。
3.TypeError: max_pool2d() got an unexpected keyword argument ‘atride’這個錯誤就是純粹的手誤問題了,你定義的函數中沒有這個關鍵字,這時候就要自己查看定義的函數名字,我這里應該是”stride“,在卷積神經網絡是定義步長的。
4.NameError: global name ‘time’ is not defined這個問題是我在調用函數time.time()用來計算時間損耗時,使用的函數時報錯的,具體解決方案很簡單,只要在代碼開頭加上import time這句把time庫文件加進來就好了。
5.NameError: global name ‘datetime’ is not defined解決方案同上,from datetime import datetime
6.NameError: global name ‘math’ is not defined解決方案同上,import math
7.Python中出現類似ascii之類的報錯這一類問題主要是在Python代碼中有中文輸入,這個解決方案是在代碼開頭加上:#coding:utf-8。不然凡是輸入中文輸入法下的字符就會報錯。
8.NameError: global name ‘listdir’ is not definedimport os
這里需要注意幾個問題,如果直接使用import os的時候,那么調用是就需要寫成os.listdir(),如果是使用from os import *,那么是可以直接使用listdir(),但是會出現模塊之間的命名沖突問題,對代碼的穩定性會有一定的影響,所以LZ建議如果對模塊函數還不是很熟悉的情況下哈市使用第一種方法。
9.TypeError: ‘dict_keys’ object does not support indexing這個問題是python版本的問題
#如果使用的是python2 firstStr = myTree.keys()[0] #LZ使用的是python3 firstSides = list(myTree.keys()) firstStr = firstSides[0]
這是看決策樹代碼出現的問題,python3如果運行
firstStr = myTree.keys()[0]
就會報這個錯誤,解決辦法就是先轉換成list,再把需要的索引提取出來。
10.NameError: name ‘reload’ is not defined這個是如果小伙伴們修改了自己寫的module,在重載module時可能會出現的一個問題,解決方法還時很簡單
import importlib importlib.reload(your module)11.SyntaxError: invalid character in indentifier
我這里先貼出它報錯的那行代碼是怎么顯示的:
b = 6xao
這個LZ之前講過一般出現ascii之類的問題就是混中文輸入法了,出現這個問題著實尷尬,為什么?肉眼哪能看出來是中文輸入法下的空格和英文輸入法下的空格/(ㄒoㄒ)/~~,這個只能看到底哪行報錯吧中文的空格替換成英文的空格才行,其它也沒啥辦法,最好在輸入代碼時少切換切換輸入法形式。
12.NameError: name ‘xrange’ is not definedpython版本問題,不兼容,python3版本的換成range()函數就行了。
13.AttributeError: ‘list’ object has no attribute ‘testVec’這是說list沒有這個屬性,是啥問題呢?LZ手殘的把’,’打成了’.’,知道python應該都知道’.’這是要在class里定義才能有的性質,自己憑空寫是沒用的。
14.SyntaxError: Missing paraentheses in call to ‘print’老生常談了,python的版本問題,python3.X要加()。
print ("hello world!")15.SystemError: cannot compile ‘Python.h’
這個問題就是沒法解析Python的頭文件,解決方法還是很簡單的。
#先更新下源啦 sudo apt-get update #安裝python-dev sudo apt-get install python-dev16. no module named wx
缺少模塊的解決還是很好解決的,缺啥裝啥就行了
sudo apt-get install python-wxtools
Python接觸時間不是很長,暫時遇到的錯誤還不時很多,所以就先寫這么多!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/41841.html
摘要:常見的字符編碼有編碼,編碼,編碼等。碼只規定了個字符的編碼,這在美國是夠用的。小結是一種針對的可變長度字符編碼,它是的實現方式之一。 字符編碼是計算機編程中不可回避的問題,不管你用 Python2 還是 Python3,亦或是 C++, Java 等,我都覺得非常有必要厘清計算機中的字符編碼概念。本文主要分以下幾個部分介紹: 基本概念 常見字符編碼簡介 Python 的默認編碼 Py...
摘要:之痛原文地址譯者校正實用編程指南這是我在所做的演講。事實一和二共同造成了計算機設備結構與世界人類需求的一個沖突。就是為了解決之前的老的字符集問題。值意味著,失敗時將會返回一個標準的替代字符。將使用進行了解碼。 Unicode之痛原文地址: http://nedbatchelder.com/text...譯者: yudun1989 校正: sicklife實用Unicode編程指南這是...
摘要:中把以兩個下劃線開頭的方法稱為魔術方法,這些方法在中充當了舉足輕重的作用。析構方法是才引進的新內容。析構方法的聲明格式方法體注意析構函數不能帶有任何參數。那么為了解決這個問題,我們可以使用魔術方法。 PHP中把以兩個下劃線__開頭的方法稱為魔術方法(Magic methods),這些方法在PHP中充當了舉足輕重的作用。 魔術方法包括: __construct(),類的構造函數 __d...
閱讀 1382·2021-11-22 09:34
閱讀 2587·2021-11-12 10:36
閱讀 1119·2021-11-11 16:55
閱讀 2332·2020-06-22 14:43
閱讀 1473·2019-08-30 15:55
閱讀 1986·2019-08-30 15:53
閱讀 1772·2019-08-30 10:50
閱讀 1230·2019-08-29 12:15