Open Source Web Development Tutorials - Dev Shed
Python:糸を紡ぐように文字列を紡ぐ!
(2008/11/19公開)
Pythonプログラミングの紹介(2008/10/01公開)
Pythonの入力と変数を攻略しよう!(2008/10/08公開)
Pythonの条件文とリストと辞書と演算子を一気に攻略!(2008/10/15公開)
Pythonの集合、ギャングも集合!(2008/10/22公開)
Pythonの演算子、とりあえずビールで!(2008/10/29公開)
Python:文字列とご一緒に(2008/11/05公開)
Python:もっと楽しく文字列!(2008/11/12公開)
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
Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.








