string

問題を報告する ソースを表示 ナイトリー · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

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

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 string; 必須
カウントするサブ文字列。
start int、または None。デフォルトは 0
この位置から検索を制限します。
end 整数、または 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 文字列、または文字列タプル。必須
匹合させる接尾辞(または代替接尾辞のタプル)。
start int、または None。デフォルトは 0
。この位置からテストを開始します。
end int、または None。デフォルトは None
比較を停止する位置(省略可)。

見つける

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

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

パラメータ

パラメータ 説明
sub string; 必須
検索する部分文字列。
start int、または None。デフォルトは 0
この位置から検索を制限します。
end 整数、または 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 string; 必須
検索する部分文字列。
start int、または None。デフォルトは 0
この位置から検索を制限します。
end 整数、または 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 文字列、または None。デフォルトは None
削除する文字。None の場合は空白文字すべて。

パーティション

tuple string.partition(sep)

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

パラメータ

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

removeprefix

string string.removeprefix(prefix)

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

パラメータ

パラメータ 説明
prefix 文字列。必須
削除する接頭辞(存在する場合)。

removesuffix

string string.removesuffix(suffix)

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

パラメータ

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

replace

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

oldnew に置き換えられた文字列のコピーを返します。必要に応じて、置換回数を count に制限します。

パラメータ

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

rfind

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

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

パラメータ

パラメータ 説明
sub string; 必須
検索する部分文字列。
start int、または None。デフォルトは 0
この位置から検索を制限します。
end 整数、または None。デフォルトは None
検索を制限する位置(省略可)。

rindex

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

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

パラメータ

パラメータ 説明
sub string; 必須
検索する部分文字列。
start int、または None。デフォルトは 0
この位置から検索を制限します。
end 整数、または None。デフォルトは None
検索を制限する位置(省略可)。

rpartition

tuple string.rpartition(sep)

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

パラメータ

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

rsplit

list string.rsplit(sep, maxsplit=None)

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

パラメータ

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

rstrip

string string.rstrip(chars=None)

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

パラメータ

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

split

list string.split(sep, maxsplit=None)

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

パラメータ

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

splitlines

sequence string.splitlines(keepends=False)

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

パラメータ

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

startsWith

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

文字列が sub で始まる場合は True、それ以外の場合は False を返します。必要に応じて [start:end] に制限できます。start は含め、end は含めません。

パラメータ

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

strip

string string.strip(chars=None)

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

パラメータ

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

title

string string.title()

入力文字列を頭字に変換します。つまり、各単語の先頭は大文字で、残りの文字は小文字になります。このコンテキストでは、単語は厳密には文字のシーケンスを意味します。このメソッドは補足 Unicode 文字をサポートしていません。

上限

string string.upper()

この文字列を大文字にして返します。