5章文字列

いつも奇妙なキャラクタが好きだった。

──ティム・バートン

 コンピュータの本というと、とかくプログラミングとは数学のことだという印象を持ちがちかもしれないが、実際には、ほとんどのプログラマは数値よりも文字列を操作することのほうがはるかに多い。数学のスキルよりも、論理的(そして創造的)思考のほうが大切なことが多い。

 文字列は、本書で取り上げる最初のPythonシーケンス(連なり、列)だ。この場合は、文字のシーケンスである。しかし、文字とはなんだろうか。文字は書き言葉の最小の単位で、狭義の文字、数字、記号、符号のほか、スペースや改行などの指示といったものまで含んでいる。文字は、どのように見えるかではなく、どのように使われるか、つまり意味によって定義される。同じ文字の表示方法は複数ある(フォントの違いにより)し、複数の文字が同じ表示になることもある(Hは、ラテン文字ではもちろんHの意味だが、キリル文字ではラテン文字のNの意味になる)。

 この章では、ASCII(英数字と少数の記号、制御文字による基本的なキャラクタセット、アクセント記号付きの英字さえ含まれていない)のコード例を使って単純な文字列の作り方と整形方法を説明する。文字列に関連する重要なテーマのうち、今触れたHNの問題などを扱うUnicodeと正規表現(パターンマッチ)の2つについては12章で取り上げる。

 ほかの言語とは異なり、Pythonの文字列はイミュータブルである。文字列をその場で書き換えることはできない。しかし、文字列の一部を別の文字列にコピーして同じ結果を得ることはできる。その方法についてはすぐあとで説明する。

5.1 クォートによる作成

 Python文字列は、次に示すように、シングルクォートかダブルクォートで文字を囲んで作る。 ...

Get 入門 Python 3 第2版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.