2008年01月18日(金) 15:35

Pythonをインストール(Pythonはじめの一歩)

気になるニュースを見たので、Python さわってみようと。

この1年でPythonは2.04%の伸びを見せ、もっとも人気が伸びたプログラミング言語となった。ほかにはVBが1.84%、Javaが1.69%、C#が1.34%、PHPが1.25%、Delphiが1.00%、JavaScriptが0.36%人気を伸ばしている。 一方で減少傾向にあるのはC/C++/Perl/Ruby。全体的にはスクリプト言語の人気が伸びている。PerlとRubyも減少しているとはいえ微減程度だ。


微減程度とは言え C/C++/Perl/Ruby が減少傾向って、そうなんだろうか。。。
まあ、検索エンジンや YouTube の検索結果からの統計らしいので、古き良き現役言語のドキュメントなどはもう揃いに揃っているので、そういう結果なのかなという感じ。
ただ、2007年から Python は確かに何かとよく耳にする。


Python は Guido van Rossum 氏による、フリーなオブジェクト指向プログラミング言語です。 Red Hat 系 Linux ではインストーラや環境設定ツールの開発言語として利用されている


Perl みたいにコアな機能以外はモジュールで追加するというコンセプトに親近感がわくし、糊言語としても使えるそうなのでちょっといじってみる。


Python Official Website(英語)
日本Pythonユーザ会

Python のインストール

オイラのサーバ(Vine Linux)に入っていたのは、なんと Python1.5 だった(^_^;)
最新版2.5.1をソースからインストールする。

# wget http://www.python.org/ftp/python/2.5.1/Python-2.5.1.tgz
# tar xvzf Python-2.5.1.tgz
# cd Python-2.5.1
# ./configure
# make
# make install


デフォルトで /usr/local/bin/python にインストールされる。


もともとの Python1.5 は不要なので、変名しておく

mv /usr/bin/python /usr/bin/python1.5.old


そして、新たにインストールされた /usr/local/bin/python にパスが通っていないので、~/.bash_profile ファイルに以下の一行を追加しておきます(いわゆる「パスを通す」処理)。

export PATH="$PATH":/usr/local/bin


シェルを再起動して以下のコマンドを実行。

# python -V

インストールした Python のバージョンが表示されれば準備完了。
# python -V
Python 2.5.1


JapaneseCodecs のインストール

日本語を扱いたいので JapaneseCodecs をインストール。

Unicode をサポートした Python において、EUC-JP、Shift_JIS、ISO-2022-JP などの日本語の文字エンコーディングを利用できるようにするためのコデック集です。本パッケージを用いることにより、日本語の文字データをバイト列としてではなく文字列として扱えるようになります。


以下のようにコマンドを実行。

# wget http://ftp.python.jp/pub/JapaneseCodecs/JapaneseCodecs-1.4.11.tar.gz
# tar zxvf JapaneseCodecs-1.4.11.tar.gz
# cd JapaneseCodecs-1.4.11
# python setup.py install


対話モード

Python は対話モードというプロンプトでプログラミングを実行できます。
学習用言語という狙いがあるからだと思いますが、対話モードは簡単で非常に面白い。
MSXで遊んでいたころを思い出してしまいました。


「python」とだけ打ち込むと、対話モードが起動して「>>>」という入力待ちになります。

# python
Python 2.5.1 (r251:54863, Jan 18 2008, 11:19:30)
[GCC 2.95.3 20010315 (release)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>


「Hello Python!!」を出力。

>>> print "Hello Python!!"
Hello Python!!


変数に値を代入して、平均値を出力。

>>> a = 12
>>> b = 6
>>> c = 24
>>> print (a+b+c)/3
14


対話モードから抜けるには Ctrl+D 。


簡単なCGI

Python スクリプトを CGI として実行してみる。


以下のようなコードをファイル名「put_time_python.cgi」文字コード「EUC-JP」で保存。
ブラウザでアクセスすると、現在日時と曜日に応じたメッセージを表示します。実行サンプルはこちら。


[put_time_python.cgi]

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


youbi = ["日", "月", "火", "水", "木", "金", "土"]


html = '''Content-Type: text/html;charset=EUC-JP


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />
<title>Pythonで日時表示</title>
</head>
<body>
現在
<p><strong>%s(%s) %s</strong> です。</p>
<p>%s</p>
</body>
</html>
'''


import time
date = time.strftime('%Y年%m月%d日')
wday = int(time.strftime('%w'))
now = time.strftime('%H時%M分%S秒')


if wday == 5 :
    msg = "きょうはうれしいうれしい金曜日!"
elif wday == 6 or wday == 0:
    msg = "きょうは楽しい休日!遊びに行こう!"
else:
    msg = "ウィークデイはお仕事がんばろう!"


print html % (date, youbi[wday], now, msg)


time.strftime で返ってくる数字が文字列だと気付くまで30分かかった。。。


ところで、Pythonって早いんでしょうか?

このエントリーに最初のコメントを書いてみませんか?

名前  クッキーに保存 
エントリーナビ
Pythonをインストール(Pythonはじめの一歩)」は、
Python カテゴリーの記事です。


関連エントリー
モダンPerl入門届いたので読んだ
Debianデビューした
Linuxマシンの時刻あわせntpdate
僕の彼女を紹介します!写真も7枚!チラリもあるよ
Twitterに一撃投稿するブックマークレットとCGI

トラックバック
このエントリーへトラックバックするURL (言及リンクのないトラックバックは無効です)