TEDIA会員に登録したメールアドレスとパスワードを入力してください

メールアドレス:

     パスワード:


パスワードを忘れた方はパスワードの確認を行ってください。

TEDIA会員へのご登録がお済みで無い方はこちらで登録ができます


>> テクノロジーポータル TEDIA トップページへ戻る <<

mark Software Developer's Think IT mark 失敗しないソフト選び Find-IT mark テクノロジーポータル TEDIA

会員登録 登録情報管理

TEDIA SponsorsOpen Source Web Development Tutorials - Dev Shed

Python:糸を紡ぐように文字列を紡ぐ!
(2008/11/19公開)

Pythonの文字列:糸をつむごう

 コッター先生に生徒たちが言っていたように、「お帰りなさい!お帰りなさい!お帰りなさい!」(’70年代のアメリカの学園コメディー「Welcome Back, Kotter」より)。前回の記事では、Pythonでの文字列の操作方法についてさらに話し、インデックスとスライスについて触れたところで終わった。今回はもう一度スライスについて触れ、それを用いて文字列の内容を「変更する」方法についてお話ししよう。「変更する」と括弧でくくった理由は、理論的に言って文字列は不変だからだ。平たく言えば、文字列とはヒッピーの世界観のようなもので、変更が利かない・・・もちろん1980年代になって大企業が縦横無尽に動き回り、ヒッピーたちが自由市場のすばらしき世界に出会うまでの話だが。おい、ヒッピーよ。しっかり働け!

 余談になるが、筆者のWordのスペルチェッカーの辞書には、なぜか「hippy」という単語はないらしい。しかし、なぜか「Tippy」、「Pippy」や「Hippo」は含まれている。

コンピューターをだます

 文字列を変更するためになぜコンピューターをだます必要があるのか理解できない。文字列はそもそもなぜ変更が利かないのだ?その理由は、コンピュータープログラマーは人を邪魔するのが大好きだからだ。とりわけプログラム言語を作っている連中、その中でもオープンソースのプログラム言語を作っている連中は特にそうだ。プログラムを作ってもお金にならないかわりに、人を困らせて楽しんでいるのだ。それに、人を困らせるのはそんなに難しいことではない。

 ではそのヒッピー的文字列を「変更する」方法を見てみよう。これらのプログラムはPythonのshellのコマンドプロンプトで入力することをお忘れなく。


>>> woodstock='I am a hippy'
>>> wallstreet=woodstock[0:7] + 'yuppie'
>>> print wallstreet
I am a yuppie



 もう少し楽しんでみよう。次の例では、alphabetという名の変数に、その名のとおりアルファベットを代入する。そこで、スライスを利用して歴史上もっともカッコいい名前を表示させる。文字列のインデックス番号は0からはじまるため、例えばaはインデックス0、bはインデックス1、そしてzはインデックス26ではなく25となる。


>>> alphabet='abcdefghijklmnopqrstuvwxyz'
>>> name=alphabet[9]+alphabet[0]+alphabet[12]+alphabet[4]+alphabet[18]
>>> print name
james


1    2    3    4    次のページ

Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.