文字列

ストリングは、値として扱われる、不変の文字のシーケンスです。 文字列は、新しい文字列になるすべての不変のシーケンス関数および演算子をサポートします。 例えば、"abcdef"[1:4]と指定すると、出力は"bcd"になります。

Python では、文字は長さが 1 の文字列として表されます。

文字列リテラルは、単一引用符または三重引用符によって定義されます。 単一引用符を使用して定義されたストリングは複数行にまたがることができませんが、三重引用符を使用して定義されたストリングは複数行にまたがることができます。 ストリングは、単一引用符 (') または二重引用符 (") で囲むことができます。 引用文字には、エスケープされていない他の引用文字またはエスケープされた引用文字を含めることができます。これらの引用文字の前には円記号 (\) 文字が付きます。

"This is a string"
'This is also a string'
"It's a string"
'This book is called "Python Scripting and Automation Guide."'
"This is an escape quote (\") in a quoted string"

空白文字で区切られた複数の文字列は、Python パーサーによって自動的に連結されます。 これにより、長い文字列を入力したり、単一の文字列に複数の引用符タイプを混在させたりすることが容易になります。 次に例を示します。

"This string uses ' and " 'that string uses ".'

これにより、次のように出力されます。

This string uses ' and that string uses ".

文字列は、いくつかの有用なメソッドをサポートしています。 次の表に、これらのメソッドの一部を示します。

表 1. 文字列メソッド
方法 使用法
s.capitalize() 先頭文字の大文字化s
s.count(ss {,start {,end}}) s[start:end]内のssの出現数をカウントします。
s.startswith(str {, start {, end}})
s.endswith(str {, start {, end}}) 
テストして、 sstr で始まるかどうかを確認します。
テストして、 sstr で終わるかどうかを確認します。
s.expandtabs({size}) タブをスペースに置き換えます。デフォルトのsizeは 8 です。
s.find(str {, start {, end}})
s.rfind(str {, start {, end}})
s内のstrの最初の索引を検索します。見つからない場合、結果は -1 になります。 rfindは右から左に検索します。
s.index(str {, start {, end}})
s.rindex(str {, start {, end}})
s内のstrの最初の索引を検索します。見つからない場合は、ValueErrorを上げます。 rindexは右から左に検索します。
s.isalnum 文字列が英数字かどうかを確認するためのテスト。
s.isalpha 文字列が英字かどうかを確認するためのテスト。
s.isnum 文字列が数値かどうかを確認するためのテスト。
s.isupper 文字列がすべて大文字かどうかを確認するためのテスト。
s.islower 文字列がすべて小文字かどうかを確認するためのテスト。
s.isspace 文字列がすべて空白文字かどうかを確認するためのテスト。
s.istitle 文字列が頭文字が大文字の一連の英数字かどうかを確認するためのテスト。
s.lower()
s.upper()
s.swapcase()
s.title()
すべて小文字に変換
すべて大文字に変換
すべて逆の大文字に変換
すべてのタイトル・ケースに変換
s.join(seq) セパレーターとしてsを使用して、seq内のストリングを結合します。
s.splitlines({keep}) sを複数の行に分割します。保持がtrueの場合は、新しい行を保持します。
s.split({sep {, max}}) 最大max回までsepを使用して (デフォルトのsepは空白文字です)、sを「単語」に分割します。
s.ljust(width)
s.rjust(width)
s.center(width)
s.zfill(width)
フィールド内のストリングを左揃えにします。 width ワイド
フィールド内のストリングを右揃えにします。 width ワイド
フィールド内のストリングを中央揃えにします。 width ワイド
フィールド内のストリングを 0 で塗りつぶします。
s.lstrip()
s.rstrip()
s.strip()
先頭の空白文字を削除
末尾の空白文字を削除
先頭と末尾の空白文字を削除
s.translate(str {,delc}) delc内の文字を削除した後、テーブルを使用してsを変換します。 strは、長さが== 256のストリングでなければなりません。
s.replace(old, new {, max}) ストリングoldのすべてまたはmax発生件数をストリングnewで置換します。