Python の 文字列の説明。
文字列
文字列は 単引用符('・・・・') で囲むか、二重引用符("・・・")で囲みます。 引用符は \ でエスケープできます。
str = '単引用の中では"がそのまま使える \' と\\で表示' print(str)
単引用の中では"がそのまま使える ' と\で表示
str = "二重引用の中では'がそのまま使える \" と\\で表示" print(str)
二重引用の中では'がそのまま使える " と\で表示
引用符の前に r を付けると raw strings が使えます。
str = r'rが付くと\をそのまま表示' print(str)
rが付くと\をそのまま表示
三連引用符
三連引用符 ( '''・・・''' や """・・・""" ) を使うことで、複数行に書けます・
str = ''' Usage: thingy [OPTIONS] -h -H hostnam ''' print(str)
Usage: thingy [OPTIONS] -h -H hostnam
改行文字は自動的に文字列に含まれるが、行末に\を付けると改行を含めないようになります。(1行目と最終行も上の実行結果と違います)
str = '''\ Usage: thingy [OPTIONS] -h \ -H hostnam\ ''' print(str)
Usage: thingy [OPTIONS] -h -H hostnam
文字列の結合
+ 演算子で 連結。
str = "Apple" + "pen" print(str)
Applepen
連続する 文字列は 自動的に連結される。
str = "Apple" "pen" print(str)
Applepen
変数ではエラーになります。 文字列どうしのみ。
str1 = "Apple" str2 = "pen" str3 = str1 + str2 # +が無いとエラー print(str3)
文字列とインデックス
文字列は インデックス (添字) を指定して文字を取得できます。最初の文字のインデックスは 0 になります。
str = "Python" print(str[0]) print(str[3])
P h
インデックスには、負の値も指定できまます。この場合、右から数えていきます。一番右が-1になります。
str = "Python" print(str[-1]) print(str[-3])
n h
インデックスに加え、スライス もサポートされています。インデックスは一文字づつ取得するのに使いますが、スライス は部分文字列を取得します。
開始は含まれ、終了は含まれません。
str = "Python" print(str[0:2]) print(str[2:3])
Py t
[開始:終了] の 開始と終了はそれぞれ省略できます。 開始は省略すると0 終了は文字列のサイズとみなされます。
str = "Python" print(str[:3]) print(str[3:]) print(str[:])
Pyt hon Python
公式に スライスの指定の覚え方が記載してあった。 分かりやすいぞこれ!
-+---+---+---+---+---+---+ | P | y | t | h | o | n | -+---+---+---+---+---+---+ 0 1 2 3 4 5 6 -6 -5 -4 -3 -2 -1
文字列の一部を変更することはできない。
Python の文字列は変更できません。つまり 不変 です。従って、文字列のインデックスで指定したある場所に代入を行うとエラーが発生します
str = "Python" str[0] ="p" # エラー print(str)
文字列の長さ
文字列の長さは len関数を使う
str = "Python" print(len(str))
6