欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python筆記——try except方法

系統 1760 0

本文結構:
1、常見錯誤總結
2、try except方法

一、常見錯誤總結


  • AttributeError 試圖訪問一個對象沒有的樹形,比如foo.x,但是foo沒有屬性x
  • IOError 輸入/輸出異常;基本上是無法打開文件
  • ImportError 無法引入模塊或包;基本上是路徑問題或名稱錯誤
  • IndentationError 語法錯誤(的子類) ;代碼沒有正確對齊
  • IndexError 下標索引超出序列邊界,比如當x只有三個元素,卻試圖訪問x[5]
  • KeyError 試圖訪問字典里不存在的鍵
  • KeyboardInterrupt Ctrl+C被按下
  • NameError 使用一個還未被賦予對象的變量
  • SyntaxError Python代碼非法,代碼不能編譯(個人認為這是語法錯誤,寫錯了)
  • TypeError 傳入對象類型與要求的不符合
  • UnboundLocalError 試圖訪問一個還未被設置的局部變量,基本上是由于另有一個同名的全局變量,
    導致你以為正在訪問它
  • ValueError 傳入一個調用者不期望的值,即使值的類型是正確的

二、try except方法


有時候我們寫程序的時候,會出現一些錯誤或異常,導致程序終止,這個時候我們需要捕獲錯誤的類型,讓代碼更靈活,下面介紹下常用的try except來進行捕獲異常的方法。

  1. 處理單個異常:

  • 語法:
            
              
                >>
              
              
                >
              
              
                try
              
              
                :
              
              
                >>
              
              
                >
              
                   code

              
                >>
              
              
                >
              
              
                except
              
               Error1 
              
                as
              
               e
              
                :
              
              
                #處理Error1異常
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
            
          
  • demo
            
              
                >>
              
              
                >
              
              
                try
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                5
              
              
                /
              
              
                0
              
              
                )
              
              
                #該行為測試的語句
              
              
                >>
              
              
                >
              
              
                except
              
                ZeroDivisionError 
              
                as
              
               e
              
                :
              
              
                ## 如果測試的語句出現except后的異常(例中的ZeroDivisionError),則執行下一行代碼,否則跳過此模塊
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                ## 打印錯誤名稱
              
              
division by zero        
              
                ##執行結果
              
            
          
  1. 分開處理多個異常:

  • 語法
            
              
                >>
              
              
                >
              
              
                try
              
              
                :
              
              
                >>
              
              
                >
              
                   code

              
                >>
              
              
                >
              
              
                except
              
               Error1 
              
                as
              
               e
              
                :
              
              
                #處理Error1異常
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                >>
              
              
                >
              
              
                except
              
               Error2 
              
                as
              
               e
              
                :
              
              
                #處理Error2異常    
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
            
          
  • demo
            
              
                >>
              
              
                >
              
               a 
              
                =
              
              
                [
              
              
                0
              
              
                ,
              
              
                1
              
              
                ]
              
              
                >>
              
              
                >
              
              
                try
              
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              a
              
                [
              
              
                3
              
              
                ]
              
              
                )
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                5
              
              
                /
              
              
                0
              
              
                )
              
              
                ##語句在上一行就遇到錯誤傳到except里面去了,未檢測到此語句 
              
              
                >>
              
              
                >
              
              
                except
              
               ZeroDivisionError 
              
                as
              
               e
              
                :
              
              
                #處理Error1異常
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                >>
              
              
                >
              
              
                except
              
               IndexError 
              
                as
              
               e
              
                :
              
              
                #處理Error2異常    
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                list
              
               index out of 
              
                range
              
            
          
  1. 統一處理多個異常:

  • 語法
            
              
                >>
              
              
                >
              
              
                try
              
              
                :
              
              
                >>
              
              
                >
              
                   code

              
                >>
              
              
                >
              
              
                except
              
              
                (
              
              Error1
              
                ,
              
              Error
              
                )
              
              
                :
              
              
                ###無論遇到什么異常,都只會執行下一行要打印的一種東西
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
            
          
  1. 沒有異常,則走else部分的邏輯代碼

  • 語法:
            
              
                >>
              
              
                >
              
              
                try
              
              
                :
              
              
                >>
              
              
                >
              
                   code

              
                >>
              
              
                >
              
              
                except
              
              
                (
              
              Error1
              
                ,
              
              Error2
              
                ,
              
              
                .
              
              
                .
              
              
                .
              
              
                )
              
              
                as
              
               e
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                >>
              
              
                >
              
              
                else
              
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                "沒有錯誤,執行"
              
              
                )
              
            
          
  • demo
            
              
                >>
              
              
                >
              
              
                try
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                5
              
              
                /
              
              
                1
              
              
                )
              
              
                >>
              
              
                >
              
              
                except
              
                ZeroDivisionError 
              
                as
              
               e
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                >>
              
              
                >
              
              
                else
              
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                "沒有錯誤"
              
              
                )
              
              
沒有錯誤

            
          
  1. 不管有沒有錯誤,都會執行finnally中的代碼
    例如在對文件進行操作時候,如果文件讀寫過程中出現錯誤,無法關閉,可以將f.close()放在finally中,這樣無論是否有錯誤,文件都會關閉

            
              
                >>
              
              
                >
              
              
                try
              
              
                :
              
              
                >>
              
              
                >
              
                   code

              
                >>
              
              
                >
              
              
                except
              
              
                (
              
              Error1
              
                ,
              
              Error2
              
                ,
              
              
                .
              
              
                .
              
              
                .
              
              
                )
              
              
                as
              
               e
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              e
              
                )
              
              
                >>
              
              
                >
              
              
                else
              
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                "沒有錯誤,執行"
              
              
                )
              
              
                >>
              
              
                >
              
               finnally
              
                :
              
              
                >>
              
              
                >
              
              
                print
              
              
                (
              
              
                "不管有沒有錯,都執行finnally"
              
              
                )
              
            
          

更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 免费国产小视频在线观看 | 国产精品97| 亚洲区欧美中文字幕久久 | 2020天天狠天天透天干天天怕 | 国产精品成人亚洲一区二区 | 国产一级大片在线观看 | 草草影院地址ccyycom浮力影院37 日日干干夜夜 | 欧美在线国产 | 这里只有精品视频 | 超碰免费在线 | 日韩精品一区二区免费视频 | 亚洲欧美在线视频 | 免费久久| 人人九九精品 | 免费观看成人拍拍拍1000视频 | 伊人色综合97| 成人丁香婷婷 | 亚洲精品第五页中文字幕 | 免费激情视频在线观看 | 亚洲码在线 | 97中文| 久久久久久国产精品免费免费 | 日本人成年视频在线观看 | 国内精品视频九九九九 | 精品伊人网 | 日韩有码一区二区三区 | 久久就是精品 | 亚洲精品一区二区三区蜜桃久 | 九九热视频精品在线观看 | 国产一级影视 | 大色综合色综合资源站 | 天天噜天天干 | 午夜大片免费男女爽爽影院久久 | 男女午夜视频 | 亚洲 欧美 日韩 在线 | 日本欧美一二三区色视频 | 在线一区观看 | 在线观看亚洲一区二区 | 国产大片在线观看 | 香港免费毛片 | 99久久人妻无码精品系列性欧美 |