Coush

webサイトを作る

CGI NO IMAGE
  • 2020.03.22

動的なレスポンスを返すwebサイトはPHPやPerlなどで作る事が多いですが、Pythonでも作る事ができます。 今回はXServerで動作するwebサイトに挑戦します。 サーバーの準備 まずはサーバーの設定を行います。 XServerの場合、対象のドメインの.htaccessファイルに次の行を追加しましょう。 AddHandler cgi-script .py これで、.pyファイルがサーバー上 […]

サンプルプログラム用のオリジナルライブラリ

  • 2020.03.22

このサイトのPythonのサンプルコードは、よく使う処理をまとめたライブラリを使用していることがあります。 このコードをCoushLib.pyで保存し、サンプルコードと同じフォルダに置くことで、サンプルコードが動作するようになります。 使い方 このライブラリを使う場合、この記事の末尾にあるコードをCoushLib.pyという名前で実行したいプログラムと同じフォルダに保存し、サンプルコードのimpo […]

配列(リスト)の計算方法とチューニング

  • 2020.03.22

画像を処理するとき、ピクセルに対して操作を行うことは多いですが、ピクセル捜査の処理は時間がかかり、処理の書き方ひとつで処理時間が大きく変わります。 Pythonはリストの全てを計算することにかけては速いのですが、特定の条件の値のみ操作する場合、極端に遅くなります。 そこでどう記述すると速くなるのか考えてみましょう。 全ての値を同じ計算で処理する場合 まずはこちらの記事で使用したプログラムを元に、チ […]

処理時間を記録するクラスを作る

  • 2020.03.21

プログラムの動作時間を計測するとき、処理のどのブロックで時間がかかっているのか知りたいことがあります。 しかし、そのたびに時間を計算する処理を書くのは非効率的です。 そこで、クラス定義の勉強もかねて、処理時間を計測するクラスを作ってみましょう。 要件 こんな風に記述できるクラスを作ってみましょう。 こんな感じで、処理の要所要所でrap関数を実行することで、ラップタイムを計測するクラスを作ってみます […]

処理時間を計測するには

  • 2020.03.21

実際にプログラムを作っていると、いやに処理時間がかかっているな…と感じることがあります。 そういう時は、処理に実際にかかっている時間を計測してみましょう。 time.perf_counter()を使うと、実行された時刻が取得できます。これを処理開始前、開始後にそれぞれ取得し、開始後 – 開始前 を計算することで、かかった時間を算出しています。 取得できる値は浮動小数点値で、秒を取得でき […]

Pythonで画像を扱うには

  • 2020.03.21

Phtonで画像を加工する処理を行いたい場合の基本を説明します。 画像を開く 画像を開くにはImageをインポートしてImage.Open関数を使います。 これでimgに画像のオブジェクトが入ります。 print(img)を実行すると、画像オブジェクトが入っているのがわかります。 画像のピクセルデータを配列に変換 画像のピクセルデータを取得するには、numpyを使います。 配列に変換されたピクセル […]