タグ

Pythonとassertに関するslay-tのブックマーク (3)

  • Pythonメモ : better-exceptionsで例外情報を見やすくする - もた日記

    better-exceptions インストール 使い方 better-exceptions github.com better-exceptionsを使用すると例外情報が図のようにみやすくなる。 インストール pipでインストールできるので下記コマンドを実行。 $ pip install better_exceptions 使い方 以下のようにbetter_exceptionsをインポートすればよい。 import better_exceptions 試しに下記コードを実行した場合の出力を比べてみる。 import better_exceptions foo = 52 def shallow(a, b): deep(a + b) def deep(val): global foo assert val > 10 and foo == 60 bar = foo - 50 shallow(b

    Pythonメモ : better-exceptionsで例外情報を見やすくする - もた日記
  • Pythonに咬まれるな : 注意すべきセキュリティリスクのリスト | POSTD

    Pythonは、習得が容易で、より大きく複雑なアプリケーションの開発にすぐに適用していけることから、コンピューティング環境に広く普及し、勢いを強めています。ただ、あまりに明瞭で親しみやすい言語なので、ソフトウェアエンジニアやシステムアドミニストレータが警戒を解いてしまい、セキュリティに重大な影響を及ぼすコーディングミスを誘発する可能性はあるかもしれません。主に、初めてPythonを使う人を対象とするこの記事では、この言語のセキュリティ関連のクセに触れます。ベテラン開発者にとってもその特異性を意識するきっかけになればと思います。 入力関数 Python 2に多数存在するビルトイン関数の中で、 input はセキュリティの面で完全に難点です。この関数をひとたび呼び出すと、標準入力から読み込んだものが即座にPythonコードとして評価されます。 $ python2 >>> input() dir

    Pythonに咬まれるな : 注意すべきセキュリティリスクのリスト | POSTD
  • Pythonで学ぶ 基礎からのプログラミング入門(34) Pythonのテスト手法

    今回からはプログラムを書くというよりも書かれたプログラムが期待どおりに動いているかどうかを確認する手法について扱います。 確認する手法はおおまかに2つあり、ひとつはプログラムを「書いている段階」でそれが期待どおりに動くかどうかを確認する「テスト」と呼ばれる手法です。もうひとつは書かれたプログラムが期待どおりに動いていないことがわかった「あと」で行う「デバッグ」と呼ばれる手法です。 あまりにもバグだらけのコードをデバッグするのは時間がかかる大変な作業なので、理想的には「現在開発している小さいパーツ単位でのテスト」をパスしたコードをどんどん結合していくというのが一般的な開発の流れになると思います。テストで見つかった「パーツを書いているとき」の問題の修正は比較的容易な場合が多いです。 テストに通ったうえでトラブルが発生した場合に、デバッグで何が原因で問題が発生しているかを特定し修正します。デバッ

    Pythonで学ぶ 基礎からのプログラミング入門(34) Pythonのテスト手法
  • 1