string

問題を報告する ソースを表示 Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

文字列をサポートする言語組み込み型。文字列リテラルの例:

a = 'abc\ndef'
b = "ab'cd"
c = """multiline string"""

# Strings support slicing (negative index starts from the end):
x = "hello"[2:4]  # "ll"
y = "hello"[1:-1]  # "ell"
z = "hello"[:4]  # "hell"# Slice steps can be used, too:
s = "hello"[::2] # "hlo"
t = "hello"[3:0:-1] # "lle"
文字列は直接反復処理できません。.elems() メソッドを使用して文字を反復処理します。例:
"bc" in "abcd"   # evaluates to True
x = [c for c in "abc".elems()]  # x == ["a", "b", "c"]
文字列の暗黙的な連結は許可されていません。代わりに + 演算子を使用してください。比較演算子は辞書式順序の比較を行います。等価性をテストするには == を使用します。

メンバー

大文字

string string.capitalize()

最初の文字(存在する場合)を大文字にし、残りの文字を小文字にした文字列のコピーを返します。このメソッドは ASCII 以外の文字をサポートしていません。

count

int string.count(sub, start=0, end=None)

文字列内の部分文字列 sub の(重複しない)出現回数を返します。必要に応じて、[start:end]start を含む範囲に制限し、end を除く範囲に制限できます。

パラメータ

パラメータ 説明
sub 必須
カウントする部分文字列。
start int、または None。デフォルトは 0
です。 この位置からの検索に制限します。
end int、または None。デフォルトは None
です。検索を制限する前のオプションの位置。

elems

sequence string.elems()

文字列の 1 文字の連続する部分文字列を含むイテラブル値を返します。[s[i] for i in range(len(s))] と同等ですが、返される値がリストではない可能性があります。

endswith

bool string.endswith(sub, start=0, end=None)

文字列が sub で終わる場合は True、それ以外の場合は False を返します。必要に応じて、[start:end] に制限できます。start は包括的、end は排他的です。

パラメータ

パラメータ 説明
sub string、または stringtuple。必須
一致させるサフィックス(または代替サフィックスのタプル)。
start int; または None; デフォルトは 0
この位置からテストを開始します。
end int; または None; デフォルトは None
比較を停止するオプションの位置。

見つける

int string.find(sub, start=0, end=None)

sub が見つかった最初のインデックスを返します。そのようなインデックスが存在しない場合は -1 を返します。オプションで [start:end] に制限できます。start は包括的で、end は排他的です。

パラメータ

パラメータ 説明
sub 必須
検索する部分文字列。
start int、または None。デフォルトは 0
です。 この位置からの検索に制限します。
end int、または None。デフォルトは None
です。検索を制限する前のオプションの位置。

形式

string string.format(*args, **kwargs)

文字列補間を実行します。フォーマット文字列には、中かっこ {} で囲まれた置換フィールドが含まれます。中かっこで囲まれていないものはすべてリテラル テキストと見なされ、変更されずにそのまま出力にコピーされます。リテラル テキストに中かっこ文字を含める必要がある場合は、{{}} のように、中かっこを 2 つ重ねてエスケープできます。置換フィールドには、名前、数値、または空の値を指定できます。値は str 関数を使用して文字列に変換されます。
# Access in order:
"{} < {}".format(4, 5) == "4 < 5"
# Access by position:
"{1}, {0}".format(2, 1) == "1, 2"
# Access by name:
"x{key}x".format(key = 2) == "x2x"

パラメータ

パラメータ 説明
args デフォルトは ()
です。引数のリスト。
kwargs デフォルトは {}
です。引数の辞書。

index

int string.index(sub, start=0, end=None)

sub が見つかった最初のインデックスを返します。そのようなインデックスが存在しない場合はエラーを発生させます。必要に応じて、[start:end]start を含む範囲、end を含まない範囲に制限できます。

パラメータ

パラメータ 説明
sub 必須
検索する部分文字列。
start int、または None。デフォルトは 0
です。 この位置からの検索に制限します。
end int、または None。デフォルトは None
です。検索を制限する前のオプションの位置。

isalnum

bool string.isalnum()

文字列内のすべての文字が英数字([a-zA-Z0-9])で、1 文字以上ある場合は True を返します。

isalpha

bool string.isalpha()

文字列内のすべての文字がアルファベット([a-zA-Z])で、少なくとも 1 文字以上ある場合は True を返します。

isdigit

bool string.isdigit()

文字列内のすべての文字が数字([0-9])で、少なくとも 1 つの文字がある場合は True を返します。

islower

bool string.islower()

文字列内のすべてのケース付き文字が小文字で、1 つ以上の文字がある場合は True を返します。

isspace

bool string.isspace()

すべての文字が空白文字で、文字列に 1 つ以上の文字が含まれている場合は True を返します。

istitle

bool string.istitle()

文字列がタイトルケースで、少なくとも 1 文字が含まれている場合は True を返します。つまり、大文字の文字はすべて大文字と小文字が区別されない文字(空白文字など)の後に続き、小文字の文字はすべて大文字と小文字が区別される文字(大文字または小文字)の後に続く必要があります。

isupper

bool string.isupper()

文字列内のすべての文字が大文字で、1 文字以上ある場合は True を返します。

結合

string string.join(elements)

引数の文字列要素がこの文字列を区切り文字として結合された文字列を返します。例:
"|".join(["a", "b", "c"]) == "a|b|c"

パラメータ

パラメータ 説明
elements 必須
結合するオブジェクト。

インストリーム単体に比べて

string string.lower()

この文字列の小文字バージョンを返します。

lstrip

string string.lstrip(chars=None)

chars に含まれる先頭の文字が削除された文字列のコピーを返します。chars は接頭辞ではないため、その値のすべての組み合わせが削除されます。
"abcba".lstrip("ba") == "cba"

パラメータ

パラメータ 説明
chars string、または None。デフォルトは None
削除する文字。None の場合はすべての空白文字。

パーティション

tuple string.partition(sep)

入力文字列をセパレータ sep が最初に出現した位置で分割し、結果のパーティションを (before, separator, after) 形式の 3 要素のタプルとして返します。入力文字列に区切り文字が含まれていない場合、partition は (self, '', '') を返します。

パラメータ

パラメータ 説明
sep 必須
分割する文字列。

removeprefix

string string.removeprefix(prefix)

文字列が prefix で始まる場合は、接頭辞が削除された新しい文字列を返します。それ以外の場合は、文字列を返します。

パラメータ

パラメータ 説明
prefix 必須
存在する場合に削除するプレフィックス。

removesuffix

string string.removesuffix(suffix)

文字列が suffix で終わる場合は、接尾辞が削除された新しい文字列を返します。それ以外の場合は、文字列を返します。

パラメータ

パラメータ 説明
suffix 必須
存在する場合に削除する接尾辞。

replace

string string.replace(old, new, count=-1)

old の出現箇所が new に置き換えられた文字列のコピーを返します。必要に応じて、置換回数を count に制限できます。

パラメータ

パラメータ 説明
old required
置換する文字列。
new 必須
置き換える文字列。
count デフォルトは -1
です。置換の最大数。省略した場合、または値が負の場合は、上限はありません。

rfind

int string.rfind(sub, start=0, end=None)

sub が見つかった最後のインデックスを返します。そのようなインデックスが存在しない場合は -1 を返します。必要に応じて、[start:end](含む)、start(含む)、end(含まない)に制限できます。

パラメータ

パラメータ 説明
sub 必須
検索する部分文字列。
start int、または None。デフォルトは 0
です。 この位置からの検索に制限します。
end int、または None。デフォルトは None
です。検索を制限する前のオプションの位置。

rindex

int string.rindex(sub, start=0, end=None)

sub が見つかった最後のインデックスを返します。そのようなインデックスが存在しない場合はエラーを発生させます。必要に応じて、[start:end]start を含む範囲、end を含まない範囲に制限できます。

パラメータ

パラメータ 説明
sub 必須
検索する部分文字列。
start int、または None。デフォルトは 0
です。 この位置からの検索に制限します。
end int、または None。デフォルトは None
です。検索を制限する前のオプションの位置。

rpartition

tuple string.rpartition(sep)

入力文字列を区切り文字 sep の最後の出現位置で分割し、結果のパーティションを (before, separator, after) 形式の 3 要素のタプルとして返します。入力文字列に区切り文字が含まれていない場合、rpartition は(''、''、self)を返します。

パラメータ

パラメータ 説明
sep 必須
分割する文字列。

rsplit

list string.rsplit(sep, maxsplit=None)

sep を区切り文字として使用して、文字列内のすべての単語のリストを返します。必要に応じて、分割数を maxsplit に制限できます。右からの分割を除き、このメソッドは split() と同様に動作します。

パラメータ

パラメータ 説明
sep 必須
分割する文字列。
maxsplit int; または None; デフォルトは None
分割の最大数。

rstrip

string string.rstrip(chars=None)

chars に含まれる末尾の文字が削除された文字列のコピーを返します。chars は接尾辞ではないため、その値のすべての組み合わせが削除されます。
"abcbaa".rstrip("ab") == "abc"

パラメータ

パラメータ 説明
chars string、または None。デフォルトは None
削除する文字。None の場合はすべての空白文字。

split

list string.split(sep, maxsplit=None)

sep を区切り文字として使用して、文字列内のすべての単語のリストを返します。必要に応じて、分割数を maxsplit に制限できます。

パラメータ

パラメータ 説明
sep 必須
分割する文字列。
maxsplit int; または None; デフォルトは None
分割の最大数。

splitlines

sequence string.splitlines(keepends=False)

文字列を行の境界(「\n」、「\r\n」、「\r」)で分割し、結果を新しい可変リストとして返します。

パラメータ

パラメータ 説明
keepends デフォルトは False
です。 結果のリストに改行を含めるかどうか。

startswith

bool string.startswith(sub, start=0, end=None)

文字列が sub で始まる場合は True、それ以外の場合は False を返します。必要に応じて、[start:end]start(包括的)、end(排他的)に制限できます。

パラメータ

パラメータ 説明
sub string、または stringtuple。必須
一致させる接頭辞(または代替接頭辞のタプル)。
start int; または None; デフォルトは 0
この位置からテストを開始します。
end int; または None; デフォルトは None
この位置で比較を停止します。

strip

string string.strip(chars=None)

chars に含まれる先頭または末尾の文字が削除された文字列のコピーを返します。chars は接頭辞でも接尾辞でもありません。値のすべての組み合わせが削除されます。
"aabcbcbaa".strip("ab") == "cbc"

パラメータ

パラメータ 説明
chars string、または None。デフォルトは None
削除する文字。None の場合はすべての空白文字。

title

string string.title()

入力文字列をタイトルケースに変換します。つまり、すべての単語の先頭の文字が大文字になり、残りの文字は小文字になります。この文脈では、単語は文字のシーケンスを意味します。このメソッドは補助 Unicode 文字をサポートしていません。

上限

string string.upper()

この文字列の大文字バージョンを返します。