Python 3 6 1中的異常處理

2021-07-31 23:55:05 字數 4049 閱讀 5406

fromtools.scripts.treesyncimportraw_input

importsys, os, time

#處理異常, try ... except

while true:

try:

x = int(raw_input("輸入乙個number:"))

breakexceptvalueerror:

print("oops! that was no valid number: try again.")

#exception 相容的類

classb(exception):

passclassc(b):

passclassd(c):

passforclsin[b, c, d]:

try:

raisecls()

exceptd:

print("d")

exceptc:

print("c")

exceptb:

print("b")

#異常的else從句

try:

f = open("myfile.txt")

s = f.readline()

i = int(s.strip())

exceptoserror

aserr:

print(("os error: ".format(err)))

exceptvalueerror:

print("不能轉為整數")

except:

print("偉處理異常", sys.exec_info()[0])

raisetry:

f = open("myfile.txt")

s = f.readline()

i = int(s.strip())

exceptoserror

aserr:

print("檔案不能開啟")

else:

print("else從句")

f.close()

#讀取異常內容,異常引數

try:

raiseexception("spam",'eggs')

exceptexception

aserr:

print(type(err))

print(err.args)

print(err)

x,y = err.args

print("x =", x)

print("y =", y)

#捕獲函式異常

defthis_fails():

x = 1 / 0

try:

this_fails()

exceptzerodivisionerror

aserr:

print("執行時錯誤:", err)

# 丟擲異常

try:

raisenameerror("你好")

exceptnameerror

aserr:

print("捕獲的異常,", err.args)

#自定義異常

classerror(exception):

passclassinputerror(error):

def__init__(self, expression, message):

self.expression = expression

self.message = message

classtransitionerror(error):

def__init__(self, previous, next, message):

self.previous = previous

self.next = next

self.message = message

try:

raiseinputerror(" 3 / 0 = ?","自定義輸入錯誤")

exceptinputerroraserr:

print("自定義錯誤 =",err.args)

#資源釋放

defdivide(x, y):

try:

result = x / y

exceptzerodivisionerror:

print("被0除的錯誤")

else:

print("計算結果 =", result)

finally:

print("這裡可以放釋放資源的**")

divide(3, 0)

#使用with自動釋放資源

file_name = os.path.abspath("abc\\myfile.txt")

withopen(file_name)asf:

forlineinf:

print(line, end ="")

編譯安裝 Python3 6 1

作業系統 centos7.2 系統自帶python版本 2.7.5 說明 編譯python3的過程是簡單的但比較慢,可以用連字元 這樣可以先去 忙其他的 喝茶 聽 聊妹 乙個多小時後就編譯安裝好了 python版本 3.6.1 最新版本是3.6.2 但是在make時陷入迴圈 wget 2.解壓 ta...

如何解決安裝python3 6 1失敗

安裝程式 python官方的直譯器安裝包 點選這裡 注意 如果您要在windows7上執行python3.6版本的直譯器,一定確保windows已經安裝了 win7 service pack1 補丁包 否則安裝python3.6直譯器會失敗 下來以後,安裝的過程程式設計客棧就和普通安裝windows...

python 中的異常處理

python的異常處理能力是很強大的,可向使用者準確反饋出錯資訊。在python中,異常也是物件,可對它進行操作。所有異常都是基類exception的成員。所有異常都從基類exception繼承,而且都在exceptions模組中定義。python自動將所有異常名稱放在內建命名空間中,所以程式不必匯...