0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Создание строки</a><ul><li><ul><li><a>Можно ли применять кавычки внутри строк?</a></li>
1
<ul><li><a>Создание строки</a><ul><li><ul><li><a>Можно ли применять кавычки внутри строк?</a></li>
2
</ul></li>
2
</ul></li>
3
</ul></li>
3
</ul></li>
4
<li><a>Конкатенация строк</a></li>
4
<li><a>Конкатенация строк</a></li>
5
<li><a>Несколько слов о методах строк</a></li>
5
<li><a>Несколько слов о методах строк</a></li>
6
<li><a>Индексы</a></li>
6
<li><a>Индексы</a></li>
7
<li><a>Дополнительно: преобразование символа в целое число</a></li>
7
<li><a>Дополнительно: преобразование символа в целое число</a></li>
8
</ul><p>Язык программирования Python поддерживает разные виды данных. В этой статье, предназначенной для начинающих, будет рассмотрен строковый тип<strong>string</strong>и основные операции, связанные с обработкой строк. Среди них:</p>
8
</ul><p>Язык программирования Python поддерживает разные виды данных. В этой статье, предназначенной для начинающих, будет рассмотрен строковый тип<strong>string</strong>и основные операции, связанные с обработкой строк. Среди них:</p>
9
<ul><li>создание строк;</li>
9
<ul><li>создание строк;</li>
10
<li>конкатенация строк;</li>
10
<li>конкатенация строк;</li>
11
<li>выборка символов по индексам.</li>
11
<li>выборка символов по индексам.</li>
12
</ul><h2><strong>Создание строки</strong></h2>
12
</ul><h2><strong>Создание строки</strong></h2>
13
<p>Строки (strings) используются для хранения текстовых данных. Их создание возможно одним из 3-х способов. Тут все просто, т. к. возможно применение разных кавычек: одинарных, двойных либо тройных. То есть в эти кавычки и нужно обернуть текст:</p>
13
<p>Строки (strings) используются для хранения текстовых данных. Их создание возможно одним из 3-х способов. Тут все просто, т. к. возможно применение разных кавычек: одинарных, двойных либо тройных. То есть в эти кавычки и нужно обернуть текст:</p>
14
<p>otus_string_1 = 'Привет, друзья!'</p>
14
<p>otus_string_1 = 'Привет, друзья!'</p>
15
<p>otus_string_2 = "Хотите выучить Python?"</p>
15
<p>otus_string_2 = "Хотите выучить Python?"</p>
16
<p>otus_string_3 = """Ждем вас на наших курсах!"""</p>
16
<p>otus_string_3 = """Ждем вас на наших курсах!"""</p>
17
<p>Кавычки в данном случае - это строковые литералы, позволяющие создавать в памяти программы Python объект типа <strong>string</strong>.</p>
17
<p>Кавычки в данном случае - это строковые литералы, позволяющие создавать в памяти программы Python объект типа <strong>string</strong>.</p>
18
<p>Нужно понимать, что разницы, какие именно кавычки использует разработчик, нет. Главное - открывающие и закрывающие кавычки должны быть однотипными. Если же поставить вначале одинарную кавычку, а в конце двойную - ошибки не избежать.</p>
18
<p>Нужно понимать, что разницы, какие именно кавычки использует разработчик, нет. Главное - открывающие и закрывающие кавычки должны быть однотипными. Если же поставить вначале одинарную кавычку, а в конце двойную - ошибки не избежать.</p>
19
<h4>Можно ли применять кавычки внутри строк?</h4>
19
<h4>Можно ли применять кавычки внутри строк?</h4>
20
<p>Можно, для чего есть несколько вариантов. Один из них - использовать внутри строки кавычки другого типа. К примеру, наружные кавычки являются двойными, а внутренние - одинарными. Или наоборот:</p>
20
<p>Можно, для чего есть несколько вариантов. Один из них - использовать внутри строки кавычки другого типа. К примеру, наружные кавычки являются двойными, а внутренние - одинарными. Или наоборот:</p>
21
<p>otus_string_1 = 'Хотите выучить "Пайтон?" и стать профессионалом'</p>
21
<p>otus_string_1 = 'Хотите выучить "Пайтон?" и стать профессионалом'</p>
22
<p>otus_string_2 = "Запишитесь на курс в 'Отус' уже сегодня!"</p>
22
<p>otus_string_2 = "Запишитесь на курс в 'Отус' уже сегодня!"</p>
23
<p>Второй метод -<strong>экранирование</strong>. Для экранирования используется обратный слэш. Вот, как это выглядит в коде:</p>
23
<p>Второй метод -<strong>экранирование</strong>. Для экранирования используется обратный слэш. Вот, как это выглядит в коде:</p>
24
<p>otus_string_1 = "Я и \'Пайтон\' созданы друг для друга"</p>
24
<p>otus_string_1 = "Я и \'Пайтон\' созданы друг для друга"</p>
25
<p>У тройных кавычек есть особенности. Заключенные в них строки поддерживают<strong>многострочность</strong>, то есть для переноса не нужен символ \n. А еще внутри тройных кавычек можно вставлять как двойные, так и одинарные кавычки:</p>
25
<p>У тройных кавычек есть особенности. Заключенные в них строки поддерживают<strong>многострочность</strong>, то есть для переноса не нужен символ \n. А еще внутри тройных кавычек можно вставлять как двойные, так и одинарные кавычки:</p>
26
<p>my_string = """Учитесь</p>
26
<p>my_string = """Учитесь</p>
27
<p>программированию</p>
27
<p>программированию</p>
28
<p>в "Отус"!"""</p>
28
<p>в "Отус"!"""</p>
29
<p>print (my_string)</p>
29
<p>print (my_string)</p>
30
<p>Вывод будет следующим:</p>
30
<p>Вывод будет следующим:</p>
31
<p><strong>Строки являются неизменяемыми объектами</strong>(как и числа). В этом легко убедиться, если создать переменные с одинаковыми именами, а потом вывести на экран их<strong>id</strong>- идентификаторы будут различаться:</p>
31
<p><strong>Строки являются неизменяемыми объектами</strong>(как и числа). В этом легко убедиться, если создать переменные с одинаковыми именами, а потом вывести на экран их<strong>id</strong>- идентификаторы будут различаться:</p>
32
<p>otus_string = 'Привет, друзья!'</p>
32
<p>otus_string = 'Привет, друзья!'</p>
33
<p>print(id(otus_string))</p>
33
<p>print(id(otus_string))</p>
34
<p>otus_string = "Хотите выучить Python?"</p>
34
<p>otus_string = "Хотите выучить Python?"</p>
35
<p>print(id(otus_string))</p>
35
<p>print(id(otus_string))</p>
36
<p>Рекомендуется повторить вышеописанные операции самостоятельно и попрактиковаться. Сделать это можно, даже не устанавливая "Пайтон", используя любой онлайн-компилятор. </p>
36
<p>Рекомендуется повторить вышеописанные операции самостоятельно и попрактиковаться. Сделать это можно, даже не устанавливая "Пайтон", используя любой онлайн-компилятор. </p>
37
<h2><strong>Конкатенация строк</strong></h2>
37
<h2><strong>Конкатенация строк</strong></h2>
38
<p><strong>Конкатенация</strong>- это сложение строк, в результате чего они соединяются друг с другом. Самый простой способ сделать это - использовать простейший оператор сложения, то есть знак "+".</p>
38
<p><strong>Конкатенация</strong>- это сложение строк, в результате чего они соединяются друг с другом. Самый простой способ сделать это - использовать простейший оператор сложения, то есть знак "+".</p>
39
<p>Это простейший синтаксис, причем можно брать сколько угодно строк и соединять их:</p>
39
<p>Это простейший синтаксис, причем можно брать сколько угодно строк и соединять их:</p>
40
<p>otus_string = "Я " + "просто " + "обожаю " + "Python!"</p>
40
<p>otus_string = "Я " + "просто " + "обожаю " + "Python!"</p>
41
<p>print(otus_string)</p>
41
<p>print(otus_string)</p>
42
<p>Если надо, можно задействовать и операнд умножения. Он позволит продублировать строку, умножив ее на соответствующее значение, которое разработчик передаст в коде. </p>
42
<p>Если надо, можно задействовать и операнд умножения. Он позволит продублировать строку, умножив ее на соответствующее значение, которое разработчик передаст в коде. </p>
43
<p>otus_string = "Code" * 10</p>
43
<p>otus_string = "Code" * 10</p>
44
<p>print(otus_string)</p>
44
<p>print(otus_string)</p>
45
<p>Важное свойство строк - длина (число символов). Узнать количество символов, из которых состоит строка, можно, задействовав встроенную функцию<strong>len</strong> (от англ. length - длина<strong>)</strong>.</p>
45
<p>Важное свойство строк - длина (число символов). Узнать количество символов, из которых состоит строка, можно, задействовав встроенную функцию<strong>len</strong> (от англ. length - длина<strong>)</strong>.</p>
46
<p>Код ниже посчитает число символов:</p>
46
<p>Код ниже посчитает число символов:</p>
47
<p>otus_string = "Python is a good for coding"</p>
47
<p>otus_string = "Python is a good for coding"</p>
48
<p>print(len(otus_string))</p>
48
<p>print(len(otus_string))</p>
49
<p>Итого: строка содержит 27 символов (пробел - тоже символ):</p>
49
<p>Итого: строка содержит 27 символов (пробел - тоже символ):</p>
50
<p>Можно попробовать передать пустую строку и постараться посчитать число символов в ней. Если вставить хотя бы пробел, на выходе получится 1 символ, если не вставлять вообще ничего, число символов будет равняться нулю.</p>
50
<p>Можно попробовать передать пустую строку и постараться посчитать число символов в ней. Если вставить хотя бы пробел, на выходе получится 1 символ, если не вставлять вообще ничего, число символов будет равняться нулю.</p>
51
<p>otus_string_1 = ""</p>
51
<p>otus_string_1 = ""</p>
52
<p>print(len(otus_string_1))</p>
52
<p>print(len(otus_string_1))</p>
53
<p>otus_string_2 = " "</p>
53
<p>otus_string_2 = " "</p>
54
<p>print(len(otus_string_2))</p>
54
<p>print(len(otus_string_2))</p>
55
<h2><strong>Несколько слов о методах строк</strong></h2>
55
<h2><strong>Несколько слов о методах строк</strong></h2>
56
<p>Ранее уже использовались такие методы, как <strong>print</strong>и <strong>id</strong>. Есть свои методы и у строковых данных - они принадлежат конкретному классу<strong>str</strong>. Чтобы вывести их, можно воспользоваться функцией<strong>dir</strong>:</p>
56
<p>Ранее уже использовались такие методы, как <strong>print</strong>и <strong>id</strong>. Есть свои методы и у строковых данных - они принадлежат конкретному классу<strong>str</strong>. Чтобы вывести их, можно воспользоваться функцией<strong>dir</strong>:</p>
57
<p>Зубрить каждый из них нет необходимости, так как нужные методы будут запоминаться с практикой. Чтобы обратиться к одному из них, следует сначала обратиться к соответствующему объекту, потом поставить точку, потом написать нужный метод и круглые скобки. Лучше это увидеть:</p>
57
<p>Зубрить каждый из них нет необходимости, так как нужные методы будут запоминаться с практикой. Чтобы обратиться к одному из них, следует сначала обратиться к соответствующему объекту, потом поставить точку, потом написать нужный метод и круглые скобки. Лучше это увидеть:</p>
58
<p>string_1 = "oTUs"</p>
58
<p>string_1 = "oTUs"</p>
59
<p>string_1 = string_1.title()</p>
59
<p>string_1 = string_1.title()</p>
60
<p>print(string_1)</p>
60
<p>print(string_1)</p>
61
<p>string_1 = string_1.upper()</p>
61
<p>string_1 = string_1.upper()</p>
62
<p>print(string_1)</p>
62
<p>print(string_1)</p>
63
<p>string_1 = string_1.lower()</p>
63
<p>string_1 = string_1.lower()</p>
64
<p>print(string_1)</p>
64
<p>print(string_1)</p>
65
<p>Что отображено на скриншоте выше:</p>
65
<p>Что отображено на скриншоте выше:</p>
66
<ul><li>была создана новая строка<strong>string_1</strong>с содержимым “oTUs”;</li>
66
<ul><li>была создана новая строка<strong>string_1</strong>с содержимым “oTUs”;</li>
67
<li>вначале задействовали метод<strong>title</strong>- вывод слова получился с заглавной буквы;</li>
67
<li>вначале задействовали метод<strong>title</strong>- вывод слова получился с заглавной буквы;</li>
68
<li>потом использовали метод для верхнего регистра<strong>upper</strong>- заглавными (прописными) стали все символы строки;</li>
68
<li>потом использовали метод для верхнего регистра<strong>upper</strong>- заглавными (прописными) стали все символы строки;</li>
69
<li>далее применили<strong>lower</strong>- все символы стали маленькими (строчными), то есть перешли в нижний регистр. </li>
69
<li>далее применили<strong>lower</strong>- все символы стали маленькими (строчными), то есть перешли в нижний регистр. </li>
70
</ul><p>Какие еще есть методы:</p>
70
</ul><p>Какие еще есть методы:</p>
71
<ul><li><strong>replace</strong>-для замены одной части исходной строки (подстроки) на другую;</li>
71
<ul><li><strong>replace</strong>-для замены одной части исходной строки (подстроки) на другую;</li>
72
<li><strong>split</strong>- позволяет разделить (не удалить!) строку по переданному делителю, возвращает список;</li>
72
<li><strong>split</strong>- позволяет разделить (не удалить!) строку по переданному делителю, возвращает список;</li>
73
<li><strong>join</strong> - склеивает подстроки по конкретному разделителю;</li>
73
<li><strong>join</strong> - склеивает подстроки по конкретному разделителю;</li>
74
<li><strong>strip</strong>. В языке программирования Python<strong>strip</strong>используется для обрезки ненужных символов, причем ненужный символ передается в виде аргумента. Обрезку можно выполнять по-разному: если с первого символа слева, то применяют не<strong>strip</strong>, а<strong>lstrip</strong>, если справа, то<strong>rstrip</strong>(с конца строки, если интересует последний символ).</li>
74
<li><strong>strip</strong>. В языке программирования Python<strong>strip</strong>используется для обрезки ненужных символов, причем ненужный символ передается в виде аргумента. Обрезку можно выполнять по-разному: если с первого символа слева, то применяют не<strong>strip</strong>, а<strong>lstrip</strong>, если справа, то<strong>rstrip</strong>(с конца строки, если интересует последний символ).</li>
75
</ul><h2><strong>Индексы</strong></h2>
75
</ul><h2><strong>Индексы</strong></h2>
76
<p>В "Питоне" у каждого символа есть свой номер - индекс. Если разработчика интересует поиск какого-нибудь символа, к нему можно обратиться. Код ниже возвращает индекс для каждого символа из слова Otus:</p>
76
<p>В "Питоне" у каждого символа есть свой номер - индекс. Если разработчика интересует поиск какого-нибудь символа, к нему можно обратиться. Код ниже возвращает индекс для каждого символа из слова Otus:</p>
77
<p>string_1 = "Otus"</p>
77
<p>string_1 = "Otus"</p>
78
<p>print(string_1[0])</p>
78
<p>print(string_1[0])</p>
79
<p>print(string_1[1])</p>
79
<p>print(string_1[1])</p>
80
<p>print(string_1[2])</p>
80
<p>print(string_1[2])</p>
81
<p>print(string_1[3])</p>
81
<p>print(string_1[3])</p>
82
<p>Тут важен один момент:<strong>индексация начинается не с единицы, а с нуля</strong>, поэтому первый символ имеет индекс 0.</p>
82
<p>Тут важен один момент:<strong>индексация начинается не с единицы, а с нуля</strong>, поэтому первый символ имеет индекс 0.</p>
83
<h2>Дополнительно: преобразование символа в целое число</h2>
83
<h2>Дополнительно: преобразование символа в целое число</h2>
84
<p>Компьютеры хранят все данные в виде цифр, и символьных данных это тоже касается. Для представления символов строкового типа String применяют схему перевода. Самая простая из них -<a><strong>ASCII</strong></a>. Если нужно вернуть число для какого-нибудь конкретного символа, используют функцию<strong>ord</strong>. К примеру, для символа "a" кодовое значение по ASCII будет равняться 97, а для "#" - 35.</p>
84
<p>Компьютеры хранят все данные в виде цифр, и символьных данных это тоже касается. Для представления символов строкового типа String применяют схему перевода. Самая простая из них -<a><strong>ASCII</strong></a>. Если нужно вернуть число для какого-нибудь конкретного символа, используют функцию<strong>ord</strong>. К примеру, для символа "a" кодовое значение по ASCII будет равняться 97, а для "#" - 35.</p>
85
<p>Кроме ASCII, также широко известен Unicode, который тоже поддерживается "Питоном".</p>
85
<p>Кроме ASCII, также широко известен Unicode, который тоже поддерживается "Питоном".</p>
86
<a></a><p><em>Источники:</em></p>
86
<a></a><p><em>Источники:</em></p>
87
<ul><li><em>https://zen.yandex.ru/media/id/5cab3ea044061700afead675/vse-o-strokah-v-python-5f60744e5622142b93b2031e;</em></li>
87
<ul><li><em>https://zen.yandex.ru/media/id/5cab3ea044061700afead675/vse-o-strokah-v-python-5f60744e5622142b93b2031e;</em></li>
88
<li><em>https://pythonru.com/osnovy/stroki-python.</em></li>
88
<li><em>https://pythonru.com/osnovy/stroki-python.</em></li>
89
</ul>
89
</ul>