python 小白學習(1)
阿新 • • 發佈:2018-11-19
自定義錯誤型別
class XxxError(Exception): def __init__(self , message): self = Exception("xxxxx") // Exception.__init__(self) self.message = message
自行錯誤丟擲
def power(x, n=2) : if x== 0 and n ==0: raise ValueError ("....") print ( x ** n) power(0,0)
函式中的變長引數
def add_list(*elements , l1=[]): length = len(elements) n = 0 while n < length : l1 = l1 + elements[n] n += 1 return l1 //預設引數應該指向不變物件
def add(a, b, *numbers ,exten=0): length = len(numbers) n = 0 sum_ = 0 while n < length: sum_+= numbers[n] n += 1 return a+b+sum_ + exten r = add(5,6,6,6,6,6,6,7,8,9)
不定長形參的應用
def print_information ( name , ** values): print("name:" , name) for key , value in values.item(): print(key , ":" , value) print_information("xxx" , age="18" , city="guangzhou")
錯誤處理
def xxx(name , age , ...): if age > 40: raise xxxError() return "xxxx" try : result = xxx("xxx" , 50 , ...) except xxxError as ex1: print ("xxx..." , ex1) except xxxError as ex2: ... finally: ...
五、python所有的標準異常類:
異常名稱 | 描述 |
---|---|
BaseException | 所有異常的基類 |
SystemExit | 直譯器請求退出 |
KeyboardInterrupt | 使用者中斷執行(通常是輸入^C) |
Exception | 常規錯誤的基類 |
StopIteration | 迭代器沒有更多的值 |
GeneratorExit | 生成器(generator)發生異常來通知退出 |
SystemExit | Python 直譯器請求退出 |
StandardError | 所有的內建標準異常的基類 |
ArithmeticError | 所有數值計算錯誤的基類 |
FloatingPointError | 浮點計算錯誤 |
OverflowError | 數值運算超出最大限制 |
ZeroDivisionError | 除(或取模)零 (所有資料型別) |
AssertionError | 斷言語句失敗 |
AttributeError | 物件沒有這個屬性 |
EOFError | 沒有內建輸入,到達EOF 標記 |
EnvironmentError | 作業系統錯誤的基類 |
IOError | 輸入/輸出操作失敗 |
OSError | 作業系統錯誤 |
WindowsError | 系統呼叫失敗 |
ImportError | 匯入模組/物件失敗 |
KeyboardInterrupt | 使用者中斷執行(通常是輸入^C) |
LookupError | 無效資料查詢的基類 |
IndexError | 序列中沒有沒有此索引(index) |
KeyError | 對映中沒有這個鍵 |
MemoryError | 記憶體溢位錯誤(對於Python 直譯器不是致命的) |
NameError | 未宣告/初始化物件 (沒有屬性) |
UnboundLocalError | 訪問未初始化的本地變數 |
ReferenceError | 弱引用(Weak reference)試圖訪問已經垃圾回收了的物件 |
RuntimeError | 一般的執行時錯誤 |
NotImplementedError | 尚未實現的方法 |
SyntaxError | Python 語法錯誤 |
IndentationError | 縮排錯誤 |
TabError | Tab 和空格混用 |
SystemError | 一般的直譯器系統錯誤 |
TypeError | 對型別無效的操作 |
ValueError | 傳入無效的引數 |
UnicodeError | Unicode 相關的錯誤 |
UnicodeDecodeError | Unicode 解碼時的錯誤 |
UnicodeEncodeError | Unicode 編碼時錯誤 |
UnicodeTranslateError | Unicode 轉換時錯誤 |
Warning | 警告的基類 |
DeprecationWarning | 關於被棄用的特 |