このページの本文へ

前へ 1 2 3 次へ

  • twitterでつぶやく
  • はてなブックマークに登録
  • del.icio.usに登録
  • livedoorクリップに登録
  • Buzzurlに登録
  • StumbleUponに登録
  • Google Bookmarksに登録
  • Facebookでシェア
  • Yahoo!ブックマークに登録
  • お気に入りに登録
  • 本文印刷

山崎徳之の実践Python塾 ― 第1回

Pythonが最高である3つの理由

2010年07月26日 10時00分更新

文● 山崎徳之/ゼロスタートコミュニケーションズ代表取締役


Let's Python!

 ということで、早速Pythonを使ってみましょう、という前に、Pythonのバージョンの状況について簡単に説明しておきます。

 現在、Pythonには2.x系列と3.x系列の2つがありますが、まだまだ2.x系列がメジャーです。3.xは2.xと後方互換性がないので、マイナーバージョンアップに比べると移行が進んでいるとは正直言えません。ライブラリやフレームワークも、3.xのサポート状況は充実しているとは言えない状況です。現状でどちらを選ぶかは、非常に悩ましい問題です。とはいえ、どちらか選択しないと始められないので、2.x系列を対象として進めます。ただし、連載の途中で3.x系列が明らかにメインストリームになってきたら、対応します。

 さて、PythonにはソースはもちろんWindows版やMac版も公式配布されています。Pythonの機能自体はLinuxでもWIndowsでもMacでも差はないのですが、使えるライブラリに差があるのでそこは注意です。たとえば、win32comというExcelなどを操作するライブラリはWindowsにしかなかったりします。LinuxでもpyExceleratorというライブラリがありますが、win32comとは別物です。この連載では、いわゆるLAMP環境にターゲットして、Linuxを前提として進めていきます。

 ダウンロードページからLinux用のインストーラーをダウンロードしてインストールしましょう。Windows版やMac版はインストーラーがあるので楽勝ですが、Linux版はソースからインストールするのでconfigureしてmakeする必要があります。configureのオプションは好みですが、--enable-sharedは付けておいたほうがよいでしょう。--enable-sharedを付けておくと、shared library(dynamic link library)を作成してくれます。Apacheのmod_wsgiで使うことなどを考えて、--enable-sharedは付けておきましょう。

 Pythonを無事インストールできたら、次にsetuptoolsを入れます。setuptoolsはPythonのパッケージ管理用のツールで、ちょっと違いますが、PerlのCPANのようなものです。setuptoolsをインストールするとeasy_installというパッケージを手軽にインストールするためのコマンドもインストールされます。この連載でもeasy_installを使いますのでsetuptoolsは入れておいてください。ちなみに、pipというより新しいパッケージ管理ツールもあるので、興味がある人は調べてみてください。

 Python以外に、データベースとしてMySQLを使いますのでインストールしておいてください。MySQLのインストールの詳細はもうそこら中に情報があると思うので省きます。

 ちなみにこのパッケージで提供されるモジュールの名前はMySQLdbです。CPANの場合、名前空間とファイル名とパッケージ名がある一定のルールの元で関係付いていますが、Pythonの場合ここは今いちです(maybe misspelled?とよくいわれます)。PythonにはWindows版やMac版もあるのですが、MySQLdbは作者がWindowsを知らない人なので、最新版はLinux版しかありません。Python本体はWindowsでも学習できるのですが、本格的に何かしようとするなら、初めからLinuxで勉強した方が結局は早道です。VMwareなどでも構わないので、Linux環境を用意しましょう。

 さて、PythonにはPython shellとでもいうような対話モードが用意されていて、実に使いやすいです。OSのシェル(Windowsであればコマンドプロンプト)からpythonと打つだけですので、MySQLdbが使用可能になっているか、Python shellで確かめましょう。


$ python
(略)
>>> import MySQLdb
>>> con = MySQLdb.connect(user='ユーザ',passwd='パスワード',db=' データベース')


 この操作でエラーが出なければ、MySQLdbは正しくインストールされ、MySQLにアクセスできる状態です。何らか問題があれば例外が発生します。

 以上で最低限の準備が整いました。この連載ではターゲットをPythonの初歩ではなく、いわば実践において進めようと思います。必要に応じて解説しますが、Pythonのシンタックスの基礎、標準モジュール、コンテナというか変数の型などは理解しているという前提です。「FacebookがPythonでできている」ことをメリットとして紹介しましたので、まずはFacebookのようなものを作ってみようと思います。


著者:山崎徳之

ゼロスタートコミュニケーションズ代表取締役。

青山学院大学卒業後、アスキー、So-netなどでネットワーク、サーバエンジニアを経験。オン・ザ・エッヂ(現ライブドア)のデータセンターである「データホテル」を構築、運営。2003年にベイエリアにおいてVoIPベンチャーであるRedSIP Inc.を創業。2006年6月に(株)ゼロスタートコミュニケーションズを設立、代表取締役就任(現任)。

■関連サイト

前へ 1 2 3 次へ

カテゴリートップへ

この連載の記事

ASCII.jp会員サービス 週刊Web Professional登録

Webディレクター江口明日香が行く

みんなが買ってる最新アイテムはコレだ!

VOCALOID3 スターターIA ARIA ON THE PLANETES

VOCALOID3 スターターIA ARIA ON THE PLANETES

ヤマハ

17,745円〜

24人が購入

標準HTML5タグリファレンス (WEB PROFESSIONAL)

標準HTML5タグリファレンス (WEB PROFESSIONAL)

アスキー・メディアワークス

2,205円〜

107人が購入

Google上位表示 64の法則 (WEB PROFESSIONAL)

Google上位表示 64の法則 (WEB PROFESSIONAL)

アスキー・メディアワークス

2,499円〜

69人が購入

メモリーカード 32GB (PCH-Z321J)

メモリーカード 32GB (PCH-Z321J)

ソニー・コンピュータエンタテインメント

7,772円〜

11人が購入

Speck MacBook Air 13型 See Thru - Clear SPK-MBA13-SEE-CLR

Speck MacBook Air 13型 See Thru - Clear SPK-MBA13-SEE-CLR

スペックコンピュータ

4,333円〜

21人が購入

iPhone 4S/4 防指紋性・高光沢機能性フィルム PRO GUARD AF for iPhone 4S/4 / PGAF-IPH4

iPhone 4S/4 防指紋性・高光沢機能性フィルム PRO GUARD AF for iPhone 4S/4 / PGAF-IPH4

マイクロソリューション Micro Solution Inc.

70人が購入

jQuery Mobile スマートフォンサイト デザイン入門 (WEB PROFESSIONAL)

jQuery Mobile スマートフォンサイト デザイン入門 (WEB PROFESSIONAL)

アスキー・メディアワークス

2,499円〜

33人が購入

Amazon.co.jp