HTML Diff
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>