kledgeb Ubuntuの使い方や日本語化、アプリの使い方を紹介しています。 Ubuntuの最新情報も紹介しています。

geditでPythonの警告や例外を捕捉できるようにする

  「gedit」でPythonの警告や例外を捕捉できるようにします。
  警告や例外を捕捉できるようにするには、捕捉を有効にするコードを挿入する必要があります。

  コードの挿入は、以下の単位で行うことができます。

  • Pythonのソースコード
  • ユーザー固有のサイト
  • システム固有(システム全体)のサイト

Pythonのソースコード

  特定のPythonのソースコードに、警告や例外の捕捉を有効にするコードを挿入します。
  コードを挿入したPythonアプリでのみ、警告や例外を捕捉できます。

  1.ソースコード

    以下のソースコードを用意しました。


#!/usr/bin/python3
#-*- coding:utf-8 -*-

import warnings
import send_tracebacks

send_tracebacks.install()

warnings.warn('警告')
raise Exception('例外')

    ポイントは以下の2行です。

import send_tracebacks

send_tracebacks.install()

    これで警告や例外を捕捉できるようになります。

  2.スクリプトの実行

    ここでは例として「端末」を起動し、「端末」から上記のPythonスクリプトを実行します。


    Pythonスクリプトを実行すると、警告や例外の情報が標準出力に出力されるため、上記のように警告や例外の情報が「端末」に表示されます。

  3.警告や例外の捕捉

    「gedit」を見ると、以下のように捕捉された警告や例外が「Python Traceback」タブに表示されています。


  4.ソースコードの表示

    「Python Traceback」タブに表示されている警告や例外をダブルクリックすると、以下のように警告や例外が発生したソースコードが表示されます。


ユーザー固有のサイト

  ユーザー固有のサイトの設定ファイルに、警告や例外の捕捉を有効にするコードを挿入します。
  このユーザーで動作するすべてのPythonアプリで発生した警告や例外を捕捉できます。

  1.ユーザー固有のサイトの設定ファイル

    ユーザー固有のサイトの設定ファイルをテキストエディター開きます。
    ユーザー固有のサイトの設定ファイルは、「~/.local/lib/python3.4/site-packages/usercustomize.py」です。


    もしこのファイルが存在しない場合は、自分でファイルを作成します。

    Pythonのバージョンでフォルダーのパスが変わる

      Pythonのバージョンによってフォルダーのパスが変わります。
      ここではUbuntu14.04及びPython3の環境で動作させています。

      現状Ubuntu14.04のPython3のバージョンは「3.4」なので、上記のパスになります。

  2.コードの挿入

    以下のように、警告や例外の捕捉を有効にするコードを挿入します。


try:
    import send_tracebacks
except ImportError:
    pass
else:
    send_tracebacks.install()

    これで準備完了です。

  3.ソースコード

    以下のソースコードを用意しました。


#!/usr/bin/python3
#-*- coding:utf-8 -*-

import warnings

warnings.warn('警告')
raise Exception('例外')

  4.スクリプトの実行

    ここでは例として「端末」を起動し、「端末」から上記のPythonスクリプトを実行します。


    Pythonスクリプトを実行すると、警告や例外の情報が標準出力に出力されるため、上記のように警告や例外の情報が「端末」に表示されます。

  5.警告や例外の捕捉

    「gedit」を見ると、以下のように捕捉された警告や例外が「Python Traceback」タブに表示されています。


  6.ソースコードの表示

    「Python Traceback」タブに表示されている警告や例外をダブルクリックすると、以下のように警告や例外が発生したソースコードが表示されます。


システム固有のサイト

  システム固有のサイトの設定ファイルに、警告や例外の捕捉を有効にするコードを挿入します。
  すべてのユーザーで警告や例外の捕捉が有効になります。

  注意

    すべてのユーザーで警告や例外の捕捉を有効にする必要がなければ、この方法は使用せず、上記のユーザー固有のサイトの方法を使用してください。

    また、他のユーザーで動作しているPythonアプリで発生した警告や例外を、捕捉することはできません。

    捕捉できる警告や例外は、自分の環境で動作しているPythonアプリだけです。

  1.システム固有のサイトの設定ファイル

    システム固有のサイトの設定ファイルをテキストエディター開きます。
    システム固有のサイトの設定ファイルは、「/etc/python3.4/sitecustomize.py」です。


    Pythonのバージョンでフォルダーのパスが変わる

      Pythonのバージョンによってフォルダーのパスが変わります。
      ここではUbuntu14.04及びPython3の環境で動作させています。

      現状Ubuntu14.04のPython3のバージョンは「3.4」なので、上記のパスになります。

  2.コードの挿入

    以下のように、警告や例外の捕捉を有効にするコードを挿入します。


try:
    import send_tracebacks
except ImportError:
    pass
else:
    send_tracebacks.install()

    これで準備完了です。

  3.ソースコード

    以下のソースコードを用意しました。


#!/usr/bin/python3
#-*- coding:utf-8 -*-

import warnings

warnings.warn('警告')
raise Exception('例外')

  4.スクリプトの実行

    ここでは例として「端末」を起動し、「端末」から上記のPythonスクリプトを実行します。


    Pythonスクリプトを実行すると、警告や例外の情報が標準出力に出力されるため、上記のように警告や例外の情報が「端末」に表示されます。

  5.警告や例外の捕捉

    「gedit」を見ると、以下のように捕捉された警告や例外が「Python Traceback」タブに表示されています。


  6.ソースコードの表示

    「Python Traceback」タブに表示されている警告や例外をダブルクリックすると、以下のように警告や例外が発生したソースコードが表示されます。



関連コンテンツ
同一カテゴリーの記事
コメント
オプション