1. 程式人生 > >[Python]小甲魚Python視頻第032課(異常處理:你不可能總是對的)課後題及參考解答

[Python]小甲魚Python視頻第032課(異常處理:你不可能總是對的)課後題及參考解答

posit 產生 enc local mar fine 異常處理機制 如果 名稱

# -*- coding: utf-8 -*-
"""
Created on Sat Mar  9 23:07:13 2019

@author: fengs
"""


"""

測試題:

0. 結合你自身的編程經驗,總結下異常處理機制的重要性?
    在異常發生時能進行處理,而不致系統down掉或者直接將錯誤展示在用戶面前

1. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱: 

>>> my_list = [1, 2, 3, 4,,]


SyntaxError	Python的語法錯誤


2. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱:
>>> my_list = [1, 2, 3, 4, 5]
>>> print(my_list[len(my_list)])

訪問越界了,IndexError: list index out of range


3. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱:s
>>> my_list = [3, 5, 1, 4, 2]
>>> my_list.sorted()

沒有這個方法,AttributeError: ‘list‘ object has no attribute ‘sorted‘


4. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱:
>>> my_dict = {‘host‘: ‘http://bbs.fishc.com‘, ‘port‘: ‘80‘}
>>> print(my_dict[‘server‘])
 
沒有這個鍵,KeyError: ‘server‘


5. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱:
def my_fun(x, y):
        print(x, y)

my_fun(x=1, 2)

關鍵字參數必須跟隨在位置參數後面! 因為python函數在解析參數時, 是按照順序來的, 位置參數是必須先滿足, 才能考慮其他可變參數.
語法錯誤,SyntaxError: positional argument follows keyword argument


6. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱:
f = open(‘C:\\test.txt‘, wb)
f.write(‘I love FishC.com!\n‘)
f.close()

wb未定義 ------> NameError: name ‘wb‘ is not defined


7. 請問以下代碼是否會產生異常,如果會的話,請寫出異常的名稱:
def my_fun1():
        x = 5
        def my_fun2():
                x *= x
                return x
        return my_fun2()

my_fun1()


在my_fun2中 x未定義就讀寫
--->UnboundLocalError: local variable ‘x‘ referenced before assignment


"""

  

[Python]小甲魚Python視頻第032課(異常處理:你不可能總是對的)課後題及參考解答