Струнни методи на 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. Ако iterable съдържа някакви ненизови стойности, той поражда изключение 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 за String Join

Метод за заместване на низове

В 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