Pythonプログラミング(ステップ7・文字列)
このページでは、Pythonの文字列の扱いについて学ぶ。(ここは書きかけ)
str型(マニュアル)
1. str型
整数はint型、実数はfloat型のデータとして扱われるように、テキスト情報を扱うための専用のデータ型(「入れ物」)が用意されている。 それがstr型である。 strはstringに由来し、stringは「数珠つながりになったもの」を意味する。ここで、「数珠」はもちろん「文字」に対応する。
このstr型は、これまでにも画面出力の際、
print("Hello!")
の"Hello!"といった形ですでに登場していたし、数値データを入力する際、
n = int(input("整数値:"))
の中のinput( )関数は、キーから入力した「文字」をstr型の情報として取得する働きをするため、
さらにそれを数値(int型)に変換するために、int(input( )が取得した数値を表す文字) で「包む」必要がある。
つまり"123"というテキストと、123という数値を、きちんと区別して扱わなければならない。
str型のデータは "文字" のようにダブルクォートしても、'文字' のようにシングルクォートで囲んで表現しても良いが、
"駄目な例' はエラーとなる。クォート記号そのものを表す際は
"クォート記号は\"と\'です"
のように \" や \' で表現する。なお、" "の中では'、' 'の中では"を、それぞれ、そのまま記述して構わない。
数値データを文字列(str型)に変換する際は
a = str(123) x = str(3.1415)
のように、str(他のデータ型) で包めばよい。
2.リストとしての文字列の操作
連結は +
str型のデータに対しては +は文字の連結を表し、"abc"+"cdf" は
import math a = "pi=" + str(math.pi) print(a)
を実行すると、画面にはpi=3.141592653589793と表示される。
文字は[番号]で指定する
文字列中の i番目の文字は、リスト(配列)と全く同じ要領で、 文字列[i] で指定する。
a = "abcdefg" print(a[1])
は 'b' を出力する。また、a[-1]は末尾の文字 'g' となる。
[から:未満]で切り出しも可能
文字列の一部を「切り出す」ために、リストの場合と同様、スライシングも可能である。
a = "nonsense word" b = a[0:8] # bに"nonsense"をセット c = a[9:] # cに"word"をセット
len(文字列)で文字数を取得
文字列中の文字数もリスト(配列)と全く同じ要領で、 len(文字列) で取得できる。
print( len("12345") )
の出力は 5 となる。