當前位置:成語大全網 - 書法字典 - 這種錯誤的原因是什麽?

這種錯誤的原因是什麽?

妳必須發出錯誤的內容才能知道下面是壹個常見的python錯誤1)忘記在if,elif,else,for,while,class,def聲明的末尾添加:(導致“SyntaxError :invalid syntax”)此錯誤將出現在類似如下的代碼中:if spam = = 42 print(‘Hello!’).)2)使用=而不是= =(導致“語法錯誤:無效語法”)=是賦值運算符,= =等於比較運算。錯誤發生在以下代碼中:if spam = 42:print(‘Hello!’)3)縮進錯誤。(導致“縮進錯誤:意外縮進”、“縮進錯誤:不間斷不匹配任何外部縮進級別”和“縮進錯誤:應為縮進塊”)請記住,縮進增量僅在以:結尾的語句後使用,然後必須將其還原為以前的縮進格式。錯誤發生在以下代碼中:print(‘Hello!’)打印(“妳好!”)或:如果spam = = 42:print(‘Hello!’)打印(“妳好!”)或:如果spam = = 42:print(‘Hello!’)4)忘記在for循環語句中調用len()(導致“type error:“list”對象無法被解釋為整數”)通常您希望通過索引來叠代列表或字符串的元素,這需要調用range()函數。記住返回len值而不是這個列表。錯誤發生在以下代碼中:spam =【‘cat‘,dog,Mouse‘】for I in range(spam):print(spam【I】)5)嘗試修改string的值(導致“type error:“str”對象不支持項賦值”)String是不可變的數據類型。錯誤出現在以下代碼中:spam =‘我有壹只寵物貓。spam【13】=‘r‘print(spam)而妳實際上想這樣做:spam =‘我有壹只寵物貓。spam = spam【:13】。+‘r‘+spam【14:】print(spam)6)嘗試將非字符串值與字符串連接(導致“TypeError:無法將int對象轉換為字符串隱含性”)。錯誤發生在以下代碼中:numeggs = 12 print(‘I have‘+numeggs+‘eggs .‘).而妳實際上想這樣做:num eggs = 12 print(‘I have‘+str(num eggs)+‘eggs。)或:num eggs = 12 print(‘我有% s個雞蛋。%(雞蛋數)。7)忘記在字符串的開頭和結尾加上引號(導致“掃描字符串文字時出現語法錯誤:eol”)。此錯誤出現在以下代碼中:print(Hello!)或:print(‘Hello!)或:我的名字=‘al‘print(‘我的名字是‘+我的名字+。妳好嗎?)8)變量或函數名稱拼寫錯誤(導致“名稱錯誤:名稱‘fooba’未定義”)。此錯誤出現在以下代碼中:foobar =‘al‘print(‘我的名字是‘+fooba)或:spam = ruond(4.2)。or:spam = Round(4.2)9)方法名拼寫錯誤(導致“屬性錯誤:‘str’對象沒有屬性‘lower’”)。此錯誤出現在以下代碼中:spam =“這是小寫字母”spam = spam.lower()。10)引用超過了列表的最大索引(導致“IndexError:列表索引超出範圍”)。此錯誤出現在以下代碼中:spam =【‘cat‘,dog,Mouse‘】print(spam【6】)11)使用了不存在的字典鍵值(導致“鍵錯誤:“spam‘“)。此錯誤出現在以下代碼中:spam = {‘cat:‘‘Zophie‘,‘dog:‘‘Basil‘。mouse:‘‘Whiskers‘} print(‘我的寵物斑馬的名字是‘+spam【‘斑馬‘】)12)嘗試使用Python關鍵字作為變量名(導致“語法錯誤:無效語法”)Python密鑰不能用作變量名。錯誤出現在以下代碼中:class =‘algebra‘python 3關鍵字為:and、as、assert、break、class、continue、def、del、elif、else、except、false、finally、for、from、global、if、import、in、is、lambda、None、nonlocal、not、or、pass、raise、return、True、try、while、with、Yield13)在定義新變量時使用增量運算符(導致“名稱錯誤:名稱foobar未定義“)。聲明變量時不要使用0或空字符串作為初始值,這樣使用增量運算符的句子spam += 1等於spam = spam+1,這意味著垃圾郵件。此錯誤出現在以下代碼中:spam = 0spam += 42eggs += 4214)在定義局部變量之前在函數中使用局部變量(此時存在壹個與局部變量同名的全局變量)(導致“UnboundLocalError:之前引用的局部變量foobar。賦值“)在函數中使用壹個局部變量是非常復雜的,同時還有壹個同名的全局變量。使用規則是:如果在函數中定義了任何東西,那麽如果它只在函數中使用,那麽它就是局部的,反之亦然。這意味著在定義函數之前,不能將其用作函數中的全局變量。錯誤發生在以下代碼中:some var = 42 def my function():print(some var)some var = 100 my function()15)嘗試使用range()。創建整數列表(導致“type error:‘range‘對象不支持項賦值”)有時您希望獲得壹個有序的整數列表,因此range()似乎是生成此列表的好方法。但是,您需要記住range()返回的是“range對象”,而不是實際的列表值。錯誤出現在以下代碼中:spam = range(10)spam【4】=-1也許這就是您想要做的:spam = list(range(10))spam【4】=-1(註意:在Python 2中,spam =-1是有效的,因為在Python 2中,range()返回壹個列表值,但在Python 3中,會出現上述)16)在++或-自增自減運算符中很好。(導致“SyntaxError: invalid syntax”)如果您習慣於其他語言,如C++、Java、PHP,您可能想嘗試使用++或-增加和減少壹個變量。Python中沒有這樣的運算符。錯誤發生在以下代碼中:spam = 1spam++也許這就是您想要做的:spam = 1 spam+= 117)忘記將self參數添加到方法的第壹個參數中(導致“TypeError: myMethod()”。不接受任何參數(給定1“))此錯誤出現在以下代碼中:class foo():def my method():print(‘hello!a = Foo()a . my method()