Python の学習 - 例外
例外
プログラムに何らかの異常な条件が現れると、異常が発生します。たとえば、特定のファイルを読み込もうとしたときに、そのファイルが存在しない場合です。または、プログラムの実行中に誤って削除してしまいました。上記の状況は例外を使用して処理できます。 プログラムに無効なステートメントがある場合はどうなりますか? Python は、エラーを発生させて通知することで、このような状況を処理します。
' s ' s ' s 1. 例外の処理
out out out out to
' out through out out through using off through ‐to ‐ ‐‐ ‐‐ ‐ to handle例外
通常のステートメントを try ブロックに置き、エラー処理ステートメントを例外ブロックに置きます。
例外処理の例は次のとおりです:import sys try: s = raw_input('Enter something --> ') except EOFError: print '\nWhy did you do an EOF on me?' sys.exit() except: print '\nSome error/exception occurred.' print 'Done'
Python コード
Enter something --> + Done
エラーを引き起こす可能性のあるすべてのステートメントを try ブロックに配置し、すべてのエラーと例外を例外句/ブロックで処理します。 Except 句は、単一のエラーや異常、あるいは括弧内に含まれる一連のエラーや異常を具体的に処理できます。エラーまたは例外の名前が指定されていない場合は、すべてのエラーと例外が処理されます。すべての try 節には、少なくとも 1 つの例外節が関連付けられています。
エラーまたは例外が処理されない場合は、デフォルトの Python ハンドラーが呼び出されます。これはプログラムを終了し、メッセージを出力しますが、これはすでに実行されていることがわかります。
try..catch ブロックを else 句に関連付けることもできます。例外が発生しない場合は、else 句が実行されます。
2. 例外を発生させる
例外オブジェクトを取得して、この例外に関する詳細情報を取得することもできます。 raise ステートメントを使用して例外を発生させることができます。エラー/例外の名前と、例外によってトリガーされた例外オブジェクトも指定する必要があります。発生させることができるエラーまたは例外は、それぞれ Error クラスまたは Exception クラスの直接または間接的な派生クラスである必要があります。
例外を発生させる方法の例は次のとおりです:
class ShortInputException(Exception): '''A user-defined exception class.''' def __init__(self, length, atleast): Exception.__init__(self) self.length = length self.atleast = atleast try: s = raw_input('Enter something --> ') if len(s) < 3: raise ShortInputException(len(s), 3) except EOFError: print '\nWhy did you do an EOF on me?' except ShortInputException, x: print 'ShortInputException: The input was of length %d, \ was expecting at least %d' % (x.length, x.atleast) else: print 'No exception was raised.'
出力:
Python コード
Enter something --> 2222 No exception was raised. Enter something --> 1 ShortInputException: The input was of length 1, was expecting at least 3
ここでは、独自の例外タイプを作成しました。実際には、事前定義された例外/エラーを使用できます。この新しい例外タイプは ShortInputException クラスです。これには 2 つのフィールドがあります。length は指定された入力の長さ、atleast はプログラムが予期する最小の長さです。
例外句では、エラー/例外オブジェクトを表すために使用されるエラー クラスと変数を提供します。これは、関数呼び出しにおける仮パラメータと実パラメータの概念に似ています。この特定の例外句では、例外オブジェクトの長さと少なくともフィールドを使用して、適切なメッセージをユーザーに出力します。
試してください...最後に
finallyの使用例は以下の通りです:
import time f = file('poem.txt') try: while True: line = f.readline() if len(line) == 0: break time.sleep(2) print line, finally: f.close() print 'Cleaning up...closed the file'
出力:
Pythonコード
Programming is fun When the work is done if you wanna make your work also fun: use Python! Cleaning up...closed the file
通常のファイル読み込み作業を行っていますが、あえてtime.sleepメソッドを使って一行出力する前に2秒間一時停止させています。この理由は、プログラムの実行速度を遅くするためです (Python はその性質上、通常非常に高速に実行されます)。プログラムの実行中に Ctrl-c を押すと、プログラムを中断/キャンセルできます。 KeyboardInterrupt 例外がトリガーされ、プログラムが終了することがわかります。ただし、プログラムが終了する前に、finally 句が引き続き実行され、ファイルが閉じられます。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Pythonは学習と使用が簡単ですが、Cはより強力ですが複雑です。 1。Python構文は簡潔で初心者に適しています。動的なタイピングと自動メモリ管理により、使いやすくなりますが、ランタイムエラーを引き起こす可能性があります。 2.Cは、高性能アプリケーションに適した低レベルの制御と高度な機能を提供しますが、学習しきい値が高く、手動メモリとタイプの安全管理が必要です。

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

限られた時間でPythonの学習効率を最大化するには、PythonのDateTime、時間、およびスケジュールモジュールを使用できます。 1. DateTimeモジュールは、学習時間を記録および計画するために使用されます。 2。時間モジュールは、勉強と休息の時間を設定するのに役立ちます。 3.スケジュールモジュールは、毎週の学習タスクを自動的に配置します。

Pythonは、自動化、スクリプト、およびタスク管理に優れています。 1)自動化:OSやShutilなどの標準ライブラリを介してファイルバックアップが実現されます。 2)スクリプトの書き込み:Psutilライブラリを使用してシステムリソースを監視します。 3)タスク管理:スケジュールライブラリを使用してタスクをスケジュールします。 Pythonの使いやすさと豊富なライブラリサポートにより、これらの分野で優先ツールになります。
