例外処理の使用: プログラムの堅牢性と耐障害性を確保するために、つまり、エラーが発生したときにプログラムがクラッシュしないようにするには、例外を処理する必要があります。
1. エラーが発生する条件が予測可能な場合は、if を使用してエラーを処理し、エラーが発生する前に回避する必要があります。エラーが発生する条件が予測できない場合は、エラー発生後に try..excel: ハンドルを使用する必要があります
#基本的な構文は
#try:
です。検出されたコード ブロック
例外タイプを除く:
try で例外が検出されると、この場所のロジックが実行されます
AGE=10 while True: age=input('>>: ').strip() if age.isdigit(): #只有在age为字符串形式的整数时,下列代码才不会出错,该条件是可预知的 age=int(age) if age == AGE: print('you got it') break
5. try. の詳細な使用方法。 .excel...
エラーを引き起こす可能性のあるステートメントを try モジュールに配置し、例外を処理するために例外を使用します。例外は、特定の例外またはかっこ内の例外のセットを処理できます。例外の後に例外が指定されていない場合は、デフォルトですべての例外が処理されます。各試行には、少なくとも 1 つの例外
#1 が必要です。例外クラスは、指定された例外のみを処理できます。例外が指定されていない場合、処理できません。#举例 try: f=open('a.txt') g=(line.strip() for line in f) print(next(g)) print(next(g)) print(next(g)) print(next(g)) print(next(g)) except StopIteration: f.close()
s1 = 'hello' try: int(s1) except IndexError as e: # 未捕获到异常,程序直接报错 print e
s1 = 'hello' try: int(s1) except IndexError as e: print(e) except KeyError as e: print(e) except ValueError as e: print(e)
s1 = 'hello' try: int(s1) except Exception as e: print(e)
try. ..finally ステートメントは、例外が発生したかどうかに関係なく、最後のコードを実行します。構文は次のとおりです:
s1 = 'hello' try: int(s1) except IndexError as e: print(e) except KeyError as e: print(e) except ValueError as e: print(e) except Exception as e: print(e)
try: <语句> finally: <语句> #退出try时总会执行 raise
s1 = 'hello' try: int(s1) except IndexError as e: print(e) except KeyError as e: print(e) except ValueError as e: print(e) #except Exception as e: # print(e) else: print('try内代码块没有异常则执行我') finally: print('无论异常与否,都会执行该模块,通常是进行清理工作')
raise [Exception [, args [, traceback]]]
def functionName( level ): if level < 1: raise Exception("Invalid level!", level) # 触发异常后,后面的代码就不会再执行
try: raise TypeError('类型错误') except Exception as e: print(e)
class Networkerror(BaseException): def __init__(self,msg): self.msg=msg def __str__(self): return self.msg try: raise Networkerror('类型错误') except Networkerror as e: print(e)
#1, 実際の作業からエラー処理を分離
#2、コードは整理しやすく、明確になり、複雑なタスクも簡単に実行できます。 3、より安全であることは間違いなく、次のような原因が発生することはありません。いくつかの小さな不注意によりプログラムが予期せずクラッシュしました
以上がPythonで例外を処理する方法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。