string

問題を報告 ソースを表示 ナイトリー · 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 int;または None デフォルトは None
です 検索範囲を限定するオプションの位置。

要素

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;または stringタプル 必須
照合する接尾辞(または代替接尾辞のタプル)。
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 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 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 を返します。

低い

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

パラメータ

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

接頭辞を削除

string string.removeprefix(prefix)

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

パラメータ

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

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 int;または 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 の最後の箇所で入力文字列を分割し、結果のパーティションをフォームの 3 要素タプル(before、separator、after)として返します。入力文字列に区切り文字が含まれていない場合、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 string;または stringタプル 必須
照合する接頭辞(または代替接頭辞のタプル)。
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()

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