例で説明されているPython文字列メソッド

文字列検索メソッド

そこPythonで文字列内の部分文字列を見つけるための2つのオプションがあり、find()rfind()

それぞれが部分文字列が見つかった位置を返します。2つの違いfind()は、最低の位置をrfind()返し、最高の位置を返すことです。

オプションの開始引数と終了引数を指定して、部分文字列の検索を文字列の一部内に制限できます。

例:

>>> string = "Don't you call me a mindless philosopher, you overweight glob of grease!" >>> string.find('you') 6 >>> string.rfind('you') 42

部分文字列が見つからない場合は、-1が返されます。

>>> string = "Don't you call me a mindless philosopher, you overweight glob of grease!" >>> string.find('you', 43) # find 'you' in string anywhere from position 43 to the end of the string -1

詳しくは:

文字列メソッドのドキュメント。

文字列結合メソッド

このstr.join(iterable)メソッドは、内のすべての要素をiterable指定された文字列で結合するために使用されますstr。iterableに文字列以外の値が含まれている場合、TypeError例外が発生します。

iterable:文字列のすべての反復可能。文字列のリスト、文字列のタプル、またはプレーンな文字列でさえあり得ます。

文字列のリストに参加する ":"

print ":".join(["freeCodeCamp", "is", "fun"])

出力

freeCodeCamp:is:fun

文字列のタプルをで結合する " and "

print " and ".join(["A", "B", "C"])

出力

A and B and C

" "文字列のすべての文字の後にを挿入します

print " ".join("freeCodeCamp")

出力:

f r e e C o d e C a m p

空の文字列で結合しています。

list1 = ['p','r','o','g','r','a','m'] print("".join(list1))

出力:

program

セットで参加する。

test = {'2', '1', '3'} s = ', ' print(s.join(test))

出力:

2, 3, 1

詳しくは:

文字列結合に関するPythonドキュメント

文字列置換メソッド

このstr.replace(old, new, max)メソッドは、部分文字列oldを文字列newに合計max回数置き換えるために使用されます。このメソッドは、置換された文字列の新しいコピーを返します。元の文字列strは変更されません。

  1. のすべての出現を"is"で置き換えます"WAS"
string = "This is nice. This is good." newString = string.replace("is","WAS") print(newString)

出力

ThWAS WAS nice. ThWAS WAS good.
  1. の最初の2つのオカレンス"is""WAS"
string = "This is nice. This is good." newString = string.replace("is","WAS", 2) print(newString)

出力

ThWAS WAS nice. This is good.

詳しくは:

Pythonドキュメントで文字列置換の詳細を読む

ストリングストリップ法

There are three options for stripping characters from a string in Python, lstrip(), rstrip() and strip().

Each will return a copy of the string with characters removed, at from the beginning, the end or both beginning and end. If no arguments are given the default is to strip whitespace characters.

Example:

>>> string = ' Hello, World! ' >>> strip_beginning = string.lstrip() >>> strip_beginning 'Hello, World! ' >>> strip_end = string.rstrip() >>> strip_end ' Hello, World!' >>> strip_both = string.strip() >>> strip_both 'Hello, World!'

An optional argument can be provided as a string containing all characters you wish to strip.

>>> url = 'www.example.com/' >>> url.strip('w./') 'example.com'

However, do notice that only the first . got stripped from the string. This is because the strip function only strips the argument characters that lie at the left or rightmost. Since w comes before the first . they get stripped together, whereas ‘com’ is present in the right end before the . after stripping /.

String Split Method

The split() function is commonly used for string splitting in Python.

The split() method

Template: string.split(separator, maxsplit)

separator: The delimiter string. You split the string based on this character. For eg. it could be ” ”, ”:”, ”;” etc

maxsplit: The number of times to split the string based on the separator. If not specified or -1, the string is split based on all occurrences of the separator

This method returns a list of substrings delimited by the separator

Examples

Split string on space: ” ”

string = "freeCodeCamp is fun." print(string.split(" "))

Output:

['freeCodeCamp', 'is', 'fun.']

Split string on comma: ”,”

string = "freeCodeCamp,is fun, and informative" print(string.split(","))

Output:

['freeCodeCamp', 'is fun', ' and informative']

No separator specified

string = "freeCodeCamp is fun and informative" print(string.split())

Output:

['freeCodeCamp', 'is', 'fun', 'and', 'informative']

Note: If no separator is specified, then the string is stripped of all whitespace

string = "freeCodeCamp is fun and informative" print(string.split())

Output:

['freeCodeCamp', 'is', 'fun', 'and', 'informative']

Split string using maxsplit. Here we split the string on ” ” twice:

string = "freeCodeCamp is fun and informative" print(string.split(" ", 2))

Output:

['freeCodeCamp', 'is', 'fun and informative']

More Information

Check out the Python docs on string splitting