Рядові методи Python, пояснені на прикладах

Метод пошуку рядка

Існує два варіанти пошуку підрядка в рядку в Python, find()та rfind().

Кожен поверне позицію, в якій знаходиться підрядок. Різниця між ними полягає в тому, що 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. Якщо ітерабель містить будь-які нестрокові значення, він викликає виняток TypeError.

iterable: Усі повторювані рядки. Може список рядків, кортеж рядків або навіть звичайний рядок.

Приклади

Приєднуйтесь до ist рядків за допомогою ":"

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