在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

代碼又雙叕錯誤,python17個常見失誤不僅新手會犯,你也可能會

電子工程師 ? 來源:未知 ? 作者:佚名 ? 2017-09-19 11:08 ? 次閱讀

對初學者來說,想要弄懂Python的某些錯誤信息還是有困難的,下面羅列了一些常見的運行時錯誤:

1.忘記在if, elif, else, for, while, class, def 語句末尾添加冒號(:),從而導致:“SyntaxError: invalid syntax”錯誤

錯誤發生在如下類似代碼里:if spam == 42print('Hello!')

2.使用=號,而不是==號,從而導致 “SyntaxError: invalid syntax”錯誤

“=”是賦值語句,而“==”號是比較兩值是否相等的,這種錯誤常發生在如下類似代碼中:if spam = 42:print('Hello!')

3.使用縮進量錯誤,從而導致“IndentationError:unexpected indent”、“IndentationError:unindent does not match any outer indetation level”和“IndentationError:expected an indented block”錯誤

要記住的是縮進只發生在以冒號(:)為結尾的語句之后的行,而此段語句結束后,必須恢復到之前的縮進格式,這種錯誤常發生在如下代碼之中:

print('Hello!')print('Howdy!')...and this:

if spam == 42:print('Hello!')print('Howdy!')...and this:

if spam == 42:print('Hello!')

4.在 for 循環語句中忘記調用 len()從而導致“TypeError: ‘list’ object cannot be interpreted as an integer”錯誤

你想要通過索引來迭代一個list或者string的元素,這時就需要調用 range() 函數。但是range函數接受的是只能是數字,比如len()的返回值,而非一個列表。這種錯誤常發生在如下代碼中:spam = ['cat', 'dog', 'mouse']for i in range(spam):print(spam[i])

5.嘗試修改string的值,從而導致“TypeError: ‘str’ object does not support item assignment”錯誤

string是一種不可變的數據類型,該錯誤常發生在如下代碼中:spam = 'I have a pet cat.'spam[13] = 'r'print(spam)

6.嘗試連接非字符串值與字符串,從而導致 “TypeError: Can’t convert ‘int’ object to str implicitly”錯誤

錯誤常發生在如下代碼中:numEggs = 12print('I have ' + numEggs + ' eggs.')

而你實際想這樣做:numEggs = 12print('I have ' + str(numEggs) + ' eggs.')

或者:numEggs = 12print('I have %s eggs.' % (numEggs))

7.在字符串首尾忘記加引號,從而導致“SyntaxError: EOL while scanning string literal”錯誤

該錯誤發生在如下代碼中:print(Hello!')

或者:print('Hello!)

或者:myName = 'Al'print('My name is ' + myName + . How are you?')

8.變量或者函數名拼寫錯誤,從而導致“NameError: name ‘fooba’ is not defined”錯誤

該錯誤發生在如下代碼中:foobar = 'Al'print('My name is ' + fooba)

或者:spam = ruond(4.2)

或者:spam = Round(4.2)

9.方法名拼寫錯誤,從而導致 “AttributeError: ‘str’ object has no attribute ‘lowerr’”錯誤

該錯誤發生在如下代碼中:spam = 'THIS IS IN LOWERCASE.'spam = spam.lowerr()

10.引用list下標超出范圍,從而導致“IndexError: list index out of range”錯誤

該錯誤常發生在如下代碼中:spam = ['cat', 'dog', 'mouse']print(spam[6])

11.使用不存在的字典鍵值,從而導致“KeyError:‘spam’”錯誤

該錯誤發生在如下代碼中:spam = {'cat': 'Zophie', 'dog': 'Basil', 'mouse': 'Whiskers'}print('The name of my pet zebra is ' + spam['zebra'])

12.嘗試使用Python關鍵字作為變量名,從而導致“SyntaxError:invalid syntax”錯誤

Python關鍵字不能用作變量名,該錯誤發生在如下代碼中:class = 'algebra'

Python3的關鍵字有: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, yield

13.在一個定義新變量中使用增值操作符,從而導致“NameError: name ‘eggs’ is not defined”錯誤

不要以為變量在創建時就使用0或者空字符串作為初始值,就使用自增操作符的一句spam += 1或spam = spam + 1,而spam是需要手動顯示的指定一個有效的初始值。

該錯誤發生在如下代碼中:spam = 0spam += 42eggs += 42

14.在定義局部變量前在函數中使用局部變量(此時有與局部變量同名的全局變量存在),則會導致“UnboundLocalError: local variable ‘foobar’ referenced before assignment”)

在函數中使用局部變量,而同時又存在同名全局變量時是很復雜的,使用規則是:如果在函數中定義了任何東西,如果它只是在函數中使用那它就是局部的,反之就是全局變量。

這意味著你不能在定義它之前把它當全局變量在函數中使用。

該錯誤發生在如下代碼中:someVar = 42def myFunction():print(someVar)someVar = 100myFunction()

15.嘗試使用 range()創建整數列表(導致“TypeError: ‘range’ object does not support item assignment”)

有時你想要得到一個有序的整數列表,所以 range() 看上去是生成此列表的不錯方式。然而,你需要記住 range() 返回的是 “range object”,而不是實際的 list 值。

該錯誤發生在如下代碼中:spam = range(10)spam[4] = -1

也許這才是你想做:spam = list(range(10))spam[4] = -1

注意:在 Python 2 中 spam = range(10) 是能行的,因為在 Python 2 中 range() 返回的是list值,但是在 Python 3 中就會產生以上錯誤

16.使用 ++ 或 – 自增自減操作符,從而導致“SyntaxError: invalid syntax”)

如果你習慣于例如 C++ , Java , PHP 等其他的語言,也許你會想要嘗試使用 ++ 或者 – 自增自減一個變量。在Python中是沒有這樣的操作符的。

該錯誤發生在如下代碼中:spam = 1spam++

也許這才是你想做的:spam = 1spam += 1

17.忘記為方法的第一個參數添加self參數(導致“TypeError: myMethod() takes no arguments (1 given)”)

該錯誤發生在如下代碼中:class Foo():def myMethod():print('Hello!')a = Foo()a.myMethod()

文章來源:百度文庫


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4799

    瀏覽量

    84817
  • 錯誤代碼
    +關注

    關注

    0

    文章

    9

    瀏覽量

    10010

原文標題:17個新手常見的Python運行時錯誤

文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【labview我來告訴】小失誤大影響—別讓的程序毀于一旦

    編程中小失誤在所難免,少接一步多接一步的情況并不少見,然而我們今天要提醒大家的這個失誤在實際操作中卻需要加倍小心,因為一旦出現這種錯誤
    發表于 11-03 17:08

    python新手常見錯誤匯總

    對于新手,初學Python時,總會遇到這樣那樣的報錯,想要弄懂Python錯誤信息的含義可能還不知道怎么做,這里列出了一些比較
    發表于 01-26 16:41

    PCB布局樣式錯誤可能會破壞您的設計

    的草率設計錯誤,但由于這些草率錯誤造成的混亂,可能會影響裝配,調試和產量。本文介紹了一些基本的草率PCB設計風格錯誤以及如何避免它們。 墊下的參考指示器放置在銅上的參考標志顯示在PCB
    發表于 07-14 12:34

    未來AI可能會更替180萬崗位,該如何應對?

    根據科研公司Gartner的一項新研究,到2020年,人工智能(AI)和機器學習可能會淘汰180萬工作崗位,但同時創造230萬新崗位。在這種情況下,消失和創造這兩大不同結果在很大程度上取決于
    發表于 01-24 07:44 ?981次閱讀

    Python編程時常見的3錯誤

    以下列出了學習 Python的三種錯誤: 1.可變數據類型作為函數定義中的默認參數 2.可變數據類型作為類變量 3. 可變的分配錯誤
    發表于 03-21 11:46 ?1189次閱讀

    Python編程中的三種錯誤,讓浪費一下午時間

    為了讓初學 Python 的程序員避免同樣的錯誤,以下列出了我學習 Python的三種錯誤
    發表于 07-07 08:55 ?5847次閱讀

    如何讓Python編程中不出現反模式?避免初學Python常見錯誤

    篇文章收集了我在Python新手開發者寫的代碼中所見到的不規范但偶爾很微妙的問題。本文的目的是為了幫助那些新手開發者渡過寫出丑陋的
    的頭像 發表于 09-24 10:38 ?2808次閱讀

    新手學習Python有哪些常見錯誤

    學習Python的過程中發現一些常見錯誤,或許大家 遇到,這里在此總結如下:
    發表于 10-30 19:45 ?4次下載

    Linux管理員經常會的十錯誤知道是什么嗎

    如果您是Linux的新手,那么一些常見錯誤可能會給您帶來麻煩。提前了解它們,您就可以再逐漸熟悉Linux時避免出現重大問題。
    的頭像 發表于 01-18 11:13 ?1911次閱讀

    神經網絡一些人類根本不會錯誤

    的方式與人類更相近。但是,神經網絡還是一些人類根本不會錯誤,改進空間仍很大。 對抗樣本:如果在這張熊貓圖片上添加一
    的頭像 發表于 01-05 14:10 ?2180次閱讀
    神經網絡<b class='flag-5'>會</b><b class='flag-5'>犯</b>一些人類根本不會<b class='flag-5'>犯</b>的<b class='flag-5'>錯誤</b>

    Python新手經常會那些錯誤

    當初學Python 時,想要弄懂Python錯誤信息的含義可能有點復雜。這里列出了常見的的一些讓
    發表于 03-12 16:20 ?16次下載
    <b class='flag-5'>Python</b><b class='flag-5'>新手</b>經常會<b class='flag-5'>犯</b>那些<b class='flag-5'>錯誤</b>

    MLCC選型,工程師可能會哪些錯資料下載

    電子發燒友網為提供MLCC選型,工程師可能會哪些錯資料下載的電子資料下載,更有其他相關的電路圖、源代碼、課件教程、中文資料、英文資料、參考設計、用戶指南、解決方案等資料,希望可以幫
    發表于 03-28 08:48 ?2次下載
    MLCC選型,工程師<b class='flag-5'>可能會</b><b class='flag-5'>犯</b>哪些錯資料下載

    Python中有哪些常見錯誤和異常

    python常見異常類型 在程序運行過程中,總會遇到各種各樣的問題和錯誤。 有些錯誤是我們編寫代碼時自己造成的,比如語法
    的頭像 發表于 03-04 16:58 ?4185次閱讀

    哪些錯誤PLC新手容易

    PLC新手在使用和編程PLC時容易以下一些常見錯誤: (1)電氣接線錯誤:PLC的輸入和輸出需要正確地與外部設備進行連接。
    的頭像 發表于 10-11 17:10 ?973次閱讀

    python運行完后為什么閃退

    Python是一種高級編程語言,用于開發各種應用程序和腳本。當你運行一Python程序時,計算機會首先加載并解釋代碼,然后按照代碼的邏輯執
    的頭像 發表于 11-29 15:14 ?8843次閱讀
    主站蜘蛛池模板: 成人爽a毛片在线视频网站| 黄色亚洲| 五月天在线播放| 国产一区美女视频| 黄色片链接| 国产成人一区二区在线不卡| 人人干人人澡| 看全色黄大色大片免费久久 | 经典三级影院| 狠狠去| 成人网在线观看| 午夜国产高清精品一区免费| 亚洲天堂ww| 一级做受毛片免费大片| 欧美特黄一免在线观看| 不卡精品国产_亚洲人成在线| 色播在线| sss欧美一区二区三区| 国产在线啪| 国内一区二区| 亚洲视频1| 高h肉宠文1v1男男| 日本欧美视频| 4444kk在线看片| 国产成人精品日本亚洲语音1| 亚洲色图综合图片| 一色屋免费视频| 秋霞特色大片18入口私人高清| 欧美视频三区| 一级一级18女人毛片| 成人精品一级毛片| 色婷五月综激情亚洲综合| 亚洲欧美视频网站| 久久e热| 色婷婷精品| 国产免费一区二区三区在线 | 日本欧美一区二区三区免费不卡 | 奇米4色| 91av免费观看| 特级黄一级播放| 国产香蕉75在线播放|