PythonAnywhereを使ってみる

表題にあるPythonAnywhereは手元のコンピュータにPythonインタプリタをインストールしなくともWEB上にあるPythonインタプリタを使ってPythonプログラムを実行し結果をWEBブラウザーに表示するサービスをしている。

このサービスの使い方はここにある。

今回は日本語を含むプログラムを実行した。使ったプログラムは以下のようなものである:

#coding: utf-8
d = { ‘甲’:(‘コウ’,’きのえ’),
‘乙’:(‘オツ’,’きのと’),
‘丙’:(‘ヘイ’,’ひのえ’),
‘丁’:(‘テイ’,’ひのと’),
‘戊’:(‘ボ’,’つちのえ’)}
for key, value in d.items():
print(key, value)

結果の表示は

となり日本語の処理適切にされている。

インストールなしてPythonが使える点は貴重なサービスである。

 

Pythonプログラムの実行(2)

前回の例は簡単すぎてプログラムという印象が少ないと思ったので今回は「繰り返し」を含む問題である。

九九の表を表示する問題。

プログラムは以下のようになる:

#!/usr/local/bin/python
# -*- coding: euc-jp -*-

print “Content-Type: text/html; charset = EUC-JP \n”

print “九九の表 <br>\n”
for i in range(1,10):
    for j in range(1,10):
        print(“%d x %d = %02d ” % (i,j,i*j))
    print “<br>\n”

最初の三行はWEB上でPythonを実行し結果を表示させるためにある。それら以降が本来のPythonプログラム。結果をWEB上で表示させるために改行や空白の処理に工夫がいる。

実行

Pythonプログラムの実行

Pythonプログラムは一般的には手元にあるコンピュータにPythonインタプリタをインストールして使う。

しかしこのWEBサーバには既にPythonを実行できる環境があるのでこの環境を使って簡単なプログラムを走らせてみる。このような手法をCGIと呼ぶ。CGIの説明

注意点

(1)このサーバにインストールされているPythonは

ヴァージョン:2.75

場所:/usr/local/bin/python

(2)このサーバはFreeBSD(Linuxの一種)で動いているのでそのシステムに合ったテキストファイルを作成する必要がある。具体的には、

文字コード:EUC-JP

改行コード:LF

(3)ファイルの拡張子はcgiにする。

そのファイルの属性は705、このファイルを入れるホルダーの属性は755とする。

(4)試したプログラムは

#!/usr/local/bin/python
# -*- coding: euc-jp -*-

print “Content-Type: text/html; charset = EUC-JP \n”
print “Pythonから今日は”

最後の1行がPython固有のprint文である。

(5)出力結果は

実行

 

アートにボロノイ分割

ボロノイ分割という空間を分割する面白い分割法がある。これを平面の分割に適用することを基本にして「抽象絵画」を描こうという話である。

ボロノイ図(Voronoi diagram)の説明はここにある。また作図法はここにある。

後者の逐次添加法に基づく実例を以下に示す。

 

デジタルカメラRX10M4を使い始めて

デジタルカメラRX10M4(ソニー製)を使い始めて

僕がデジタルカメラを写真撮影に使い始めて以来、何故か常に広角系の単焦点レンズのカメラがまとわりついてきた。リコーの初代GRデジタルから始まった。このカメラはリコーのフィルムカメラ用に設計されたGRレンズをデジタルカメラに転用したもので小型のわりには解像度が高いものであった。カメラ自体も小型で上着のポケットにさっと入る大きさで、僕のような「散歩カメラマン」には散歩の邪魔にならず愛用したが今は手元にない。次もなんとなくGRで四代目のGRを使うことになった。これも広角系の単焦点レンズ(焦点距離:6.0mm)のカメラで初代と比較すると電子処理の部分が改良されていた。これも小型で散歩には重宝した。これは今も使っている。これらはレンズ固定型のカメラで、今から考えてみると、これらの選択は交換レンズに投資をしたくないという気持ちが働いた結果のようだ。

GR4画像
GR4画像

これらのような広角系の単焦点レンズを着けたレンズ固定型カメラは小型にでき、その割りは写真の写りがよいという長所を持っているが、近寄れない被写体や近寄ることが憚れる祭りのようなときは僕は大変にがっかりした。そんな状況の折、昨年の11月の野外勉強会(西公園周辺の紅葉)のときに斉藤先生から「RX10M4はいいよ」という話を聞いた。

RX10M4画像
RX10M4画像

このような背景があり、購入し使い始めたRX10M4であるが、僕なりにその特徴を考えてみると

(1)レンズが面白い。レンズは固定型のズームレンズである。カール・ツァイス社製で焦点距離:8.8mm-220mm(35mmフィルム換算で24mm-600mm)のバリオ・ゾナーである。資料によればゾナー型のレンズは戦前ではレンジファインダーの標準レンズだったがバックフォーカスが短く一眼レフカメラではミラーボックスを入れる余裕がないことからすっかり影を潜めてしまったレンズである。RX10M4のようなミラーレスでは逆にこのバックフォーカスが短いことがカメラをコンパクトにする上で利点になるわけで面白い使い方だとおもった。焦点距離の幅が大きいことからマクロから望遠までこれ一本で間に合う。これも僕の哲学に合っている。

 

(2)電子処理が速い。これはソニーが得意とする分野で、特に自動ピント合わせの必要時間が著しく短い。他の部分の電子処理も速いことから動的な被写体を狙う上で力を発揮する。

使い始めて間もないが、RX10M4は面白いカメラだと思って使っている。