125 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			125 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								---
							 | 
						|||
| 
								 | 
							
								title: Is There a Way to Substring a String in Python
							 | 
						|||
| 
								 | 
							
								localeTitle: Есть ли способ подстроить строку в Python
							 | 
						|||
| 
								 | 
							
								---
							 | 
						|||
| 
								 | 
							
								## Есть ли способ подстроить строку в Python
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Python предлагает множество способов подстроки строки. Его часто называют «срезанием».
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Он следует этому шаблону:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string[start: end: step] 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Куда,
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`start` : начальный индекс подстроки. Символ в этом индексе включен в подстроку. Если _старт_ не включен, предполагается, что он равен 0.
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`end` : `end` индекс подстроки. Символ в этом индексе _НЕ_ входит в подстроку. Если _конец_ не включен или если указанное значение превышает длину строки, оно считается равным длине строки по умолчанию.
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`step` : Каждый символ «step» после текущего символа, который будет включен. Значение по умолчанию равно 1. Если значение _шага_ опущено, предполагается, что оно равно 1.
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								#### шаблон
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`string[start:end]` : получить все символы от _начала_ индекса до _конца-1_
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`string[:end]` : получить все символы от начала строки до _конца-1_
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`string[start:]` : получить все символы от _начала_ индекса до конца строки
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								`string[start:end:step]` : получить все символы от _начала_ до _конца-1,_ уклоняясь от каждого _шага_
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								#### Примеры
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **Получить первые 5 символов строки**
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string = "freeCodeCamp" 
							 | 
						|||
| 
								 | 
							
								 print(string[0:5]) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Вывод:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```shell
							 | 
						|||
| 
								 | 
							
								> freeC 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Примечание: `print(string[:5])` возвращает тот же результат, что и `print(string[0:5])`
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **Получить подстроку длиной 4 от третьего символа строки**
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string = "freeCodeCamp" 
							 | 
						|||
| 
								 | 
							
								 print(string[2:6]) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Вывод:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```shell
							 | 
						|||
| 
								 | 
							
								> eeCo 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Обратите внимание, что начальный или конечный индекс может быть отрицательным числом. Отрицательный индекс означает, что вы начинаете отсчет с конца строки вместо начала (т. Е. Справа налево). Индекс -1 представляет собой последний символ строки, -2 - второй и последний символы и т. Д. ...
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **Получить последний символ строки**
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string = "freeCodeCamp" 
							 | 
						|||
| 
								 | 
							
								 print(string[-1]) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Вывод:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```shell
							 | 
						|||
| 
								 | 
							
								> p 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **Получить последние 5 символов строки**
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string = "freeCodeCamp" 
							 | 
						|||
| 
								 | 
							
								 print(string[-5:]) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Вывод:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```shell
							 | 
						|||
| 
								 | 
							
								> eCamp 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **Получить подстроку, содержащую все символы, кроме последних 4 символов, и 1-й символ**
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string = "freeCodeCamp" 
							 | 
						|||
| 
								 | 
							
								 print(string[1:-4]) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Вывод:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```shell
							 | 
						|||
| 
								 | 
							
								> reeCode 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								#### Дополнительные примеры
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```py
							 | 
						|||
| 
								 | 
							
								str = “freeCodeCamp” 
							 | 
						|||
| 
								 | 
							
								 
							 | 
						|||
| 
								 | 
							
								 print str[-5:-2] # prints 'eCa' 
							 | 
						|||
| 
								 | 
							
								 print str[-1:-2] # prints '' (empty string) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **Получить любой другой символ из строки**
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```python
							 | 
						|||
| 
								 | 
							
								string = "freeCodeCamp" 
							 | 
						|||
| 
								 | 
							
								 print(string[::2]) 
							 | 
						|||
| 
								 | 
							
								```
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Вывод:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```shell
							 | 
						|||
| 
								 | 
							
								> feCdCm 
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								```
							 |