Операции над строками python: Арифметические операции над строками / Девман

Содержание

#8. Введение в строки. Базовые операции над строками

Курс по Python: https://stepik.org/course/100707

Смотреть материал на видео

Сегодня мы с вами познакомимся с еще одним типом данных – строками.

Строки в Python задаются очень просто: или в двойных кавычках:

s1 = "Панда"

или в одинарных (апострофах):

s2 = 'Panda'

Всегда, когда задаются строки, не забывайте про кавычки, если их не поставить:

s2 = Panda

то Panda будет восприниматься как переменная и возникнет ошибка.

В Python есть еще один способ определения многострочных строк. Для этого используются тройные кавычки (одинарные или двойные, неважно) и в них прописывается текст, например, так:

text = '''Я Python бы выучил только за то,
что есть популярные курсы.
Много хороших курсов!'''

Если отобразить содержимое этой строки в консоли Питона, то увидим специальный символ ‘\n’:

'Я Python бы выучил только за то,\nчто есть популярные курсы. \nМного хороших курсов!'

Это один символ, отвечающий в тексте за перенос на новую строку и когда функция print() встречает его, то осуществляет такой переход:

print(text)

То есть, просто запомните, что для перехода на новую строку используется спецсимвол, который записывается в виде ‘\n’. Если записать просто ‘n’ – это будет символ латинской буквы n, а при добавлении слеша – превращается в символ переноса строки.

Далее, строка может вообще не содержать ни одного символа:

a = ""

Получаем пустую строку. Но если добавить хотя бы один символ, даже если это будет пробел:

a = " "

то имеем уже не пустую строку, в данном случае содержащей символ пробела.

Давайте посмотрим, какие базовые операции можно выполнять со строками в Python. Например, мы хотим соединить две строки между собой:

s1 = "Я люблю"
s2 = "язык Python"

Это можно сделать с помощью оператора +, который в случае со строками выполняет их объединение (конкатенацию):

s3 = s1 + s2
print(s3)

Но мы бы хотели добавить пробел между словами. Сделаем это так:

s3 = s1 + " " + s2

С помощью первого оператора + добавляем пробел к первой строке, а затем, вторым оператором + добавляем вторую строку s2.

Но при использовании оператора конкатенации следует быть осторожным – он объединяет строки между собой. Например, команда:

s3 = s1 + 5

приведет к ошибке, так как операнд справа является числом, а не строкой. Если нам все же необходимо соединить строку с числом, то предварительно число нужно преобразовать в строку. Сделать это можно с помощью специальной функции str():

s3 = s1 + str(5)

Функция str() выполняет преобразование в строки разные типы данных, не только числа, например, можно указать булевое значение:

str(True)

а также другие типы данных, о которых мы еще с вами будем говорить.

Следующий оператор *, применительно к строкам, выполняет их дублирование, указанное число раз:

"ха " * 5

Причем, здесь мы должны указывать именно целое число, для вещественных получим ошибку:

"ха " * 5. 5

И это понятно, так как продублировать строку 5,5 раз нельзя.

Следующая функция len() возвращает длину строки (число символов в строке):

a = "hello"
len(a)

Для пустой строки получим значение 0:

len("")

И, как видите, этой функции можно передавать или переменную на строку, или непосредственно записывать строки:

len("Python")

Следующий оператор in позволяет проверять наличие подстроки в строке, например:

'ab' in "abracadabra"
'abc' in "abracadabra"

Следующая важная группа операторов – сравнения строк. В самом простом случае, строки можно сравнивать на равенство:

a == "hello"

Но сравнение:

a == "Hello"

вернет False, так как большая буква H и малая h – это два разных символа. Для сравнения на неравенство используем оператор не равно:

a != "hello"
a != "hello "

Также смотрите строка «hello» (без пробела) и строка «hello » (с пробелом) – это две разные строки и они не равны между собой.

Наконец, строки можно сравнивать на больше и меньше, например, кот больше, чем кит с точки зрения строк:

'кот' > 'кит'

Почему так? Все просто. Здесь используется лексикографический порядок сравнения. Сначала берутся первые символы (они равны), затем переходим ко вторым символам. По алфавиту сначала идет символ ‘и’, а потом – символ ‘о’, поэтому ‘о’ больше, чем ‘и’. Как только встретились не совпадающие символы, сравнение завершается и последующие символы строк игнорируются.

Если взять равные строки:

'кот' > 'кот'

то получим False, так как ни один символ не больше соответствующего другого из второй строки. Но, добавив пробел в первую строку:

'кот ' > 'кот'

получим значение True, так как при всех прочих равных условиях больше считается более длинная строка. Наконец, если у первой строки первую букву сделать заглавной:

'Кот ' > 'кот'

то получим False. Почему? Дело в том, что каждый символ в компьютере связан с определенным числом – кодом, в соответствии с кодовой таблицей. Например, в таблице ASCII мы видим, что сначала идут символы заглавных букв, а затем – прописных. Поэтому коды больших букв меньше соответствующих кодов малых букв.

Конечно, в Python используется немного другая кодировка UTF-8, но в ней этот принцип сохраняется. Мы можем легко посмотреть код любого символа с помощью функции ord():

ord('К')
ord('к')

И, как видите, для буквы ‘К’ код меньше, чем для ‘к’.

Итак, из этого занятия вам нужно запомнить, как задавать обычные и многострочные строки. Что из себя представляет символ переноса строки. Знать базовые операции со строками:

  • + (конкатенация) – соединение строк;
  • * (дублирование) – размножение строкового фрагмента;
  • str() – функция для преобразования аргумента в строковое представление;
  • len() – вычисление длины строки;
  • in – оператор для проверки вхождения подстроки в строку;
  • операторы сравнения: ==   !=   >   <
  • ord() – определение кода символа.

Для закрепления этого материала вас ждут практические задания, а я буду ждать на следующем уроке.

Курс по Python: https://stepik.org/course/100707

Видео по теме

#1. Первое знакомство с Python Установка на компьютер

#2. Варианты исполнения команд. Переходим в PyCharm

#3. Переменные, оператор присваивания, функции type и id

#4. Числовые типы, арифметические операции

#5. Математические функции и работа с модулем math

#6. Функции print() и input(). Преобразование строк в числа int() и float()

#7. Логический тип bool. Операторы сравнения и операторы and, or, not

#8. Введение в строки. Базовые операции над строками

#9. Знакомство с индексами и срезами строк

#10. Основные методы строк

#11.

Спецсимволы, экранирование символов, row-строки

#12. Форматирование строк: метод format и F-строки

#13. Списки — операторы и функции работы с ними

#14. Срезы списков и сравнение списков

#15. Основные методы списков

#16. Вложенные списки, многомерные списки

#17. Условный оператор if. Конструкция if-else

#18. Вложенные условия и множественный выбор. Конструкция if-elif-else

#19. Тернарный условный оператор. Вложенное тернарное условие

#20. Оператор цикла while

#21. Операторы циклов break, continue и else

#22. Оператор цикла for. Функция range()

#23. Примеры работы оператора цикла for. Функция enumerate()

#24. Итератор и итерируемые объекты. Функции iter() и next()

#25. Вложенные циклы. Примеры задач с вложенными циклами

#26. Треугольник Паскаля как пример работы вложенных циклов

#27. Генераторы списков (List comprehensions)

#28. Вложенные генераторы списков

#29. Введение в словари (dict). Базовые операции над словарями

#30. Методы словаря, перебор элементов словаря в цикле

#31. Кортежи (tuple) и их методы

#32. Множества (set) и их методы

#33. Операции над множествами, сравнение множеств

#34. Генераторы множеств и генераторы словарей

#35. Функции: первое знакомство, определение def и их вызов

#36. Оператор return в функциях. Функциональное программирование

#37. Алгоритм Евклида для нахождения НОД

#38. Именованные аргументы. Фактические и формальные параметры

#39. Функции с произвольным числом параметров *args и **kwargs

#40. Операторы * и ** для упаковки и распаковки коллекций

#41. Рекурсивные функции

#42. Анонимные (lambda) функции

#43. Области видимости переменных. Ключевые слова global и nonlocal

#44. Замыкания в Python

#45. Введение в декораторы функций

#46. Декораторы с параметрами. Сохранение свойств декорируемых функций

#47. Импорт стандартных модулей. Команды import и from

#48. Импорт собственных модулей

#49. Установка сторонних модулей (pip install). Пакетная установка

#50. Пакеты (package) в Python. Вложенные пакеты

#51. Функция open. Чтение данных из файла

#52. Исключение FileNotFoundError и менеджер контекста (with) для файлов

#53. Запись данных в файл в текстовом и бинарном режимах

#54. Выражения генераторы

#55. Функция-генератор. Оператор yield

#56. Функция map. Примеры ее использования

#57. Функция filter для отбора значений итерируемых объектов

#58. Функция zip. Примеры использования

#59. Сортировка с помощью метода sort и функции sorted

#60. Аргумент key для сортировки коллекций по ключу

#61. Функции isinstance и type для проверки типов данных

#62. Функции all и any. Примеры их использования

#63. Расширенное представление чисел. Системы счисления

#64. Битовые операции И, ИЛИ, НЕ, XOR. Сдвиговые операторы

#65. Модуль random стандартной библиотеки

#66. Аннотация базовыми типами

#67. Аннотации типов коллекций

#68. Аннотации типов на уровне классов

#69. Конструкция match/case. Первое знакомство

#70. Конструкция match/case с кортежами и списками

#71. Конструкция match/case со словарями и множествами

#72. Конструкция match/case. Примеры и особенности использования

Операции над строками . Язык программирования Python

К операциям над строками, которые имеют специальную синтаксическую поддержку в языке, относятся, в частности конкатенация (склеивание) строк, повторение строки, форматирование:

>>> print «A» + «B», «A»*5, «%s» % «A»

AB AAAAA A

В операции форматирования левый операнд является строкой формата, а правый может быть либо кортежем, либо словарем, либо некоторым значением другого типа:

>>> print «%i» % 234

234

>>> print «%i %s %3. 2f» % (5, «ABC», 23.45678)

5 ABC 23.46

>>> a = 123

>>> b = [1, 2, 3]

>>> print «%(a)i: %(b)s» % vars()

123: [1, 2, 3]

Операция форматирования

В строке формата кроме текста могут употребляться спецификации, регламентирующие формат выводимого значения. Спецификация имеет синтаксис

«%» [ключ][флаг*][шир][.точность][длина_типа]спецификатор

ключ: «(» символ за исключением круглых скобок* «)»

флаг: «+» | «-» | пробел | «#» | «0»

шир: («1» … «9»)(«0» … «9»)* | «*»

точность: («1» … «9»)* | «*»

длина_типа: «a» … «z» | «A» … «Z»

спецификатор: «a» … «z» | «A» … «Z» | «%»

Где символы обозначают следующее:

ключ

Ключ из словаря.

флаги

Дополнительные свойства преобразования.

шир

Минимальная ширина поля.

точность

Точность (для чисел с плавающей запятой).

длина_типа

Модификатор типа.

спецификатор

Тип представления выводимого объекта.

В следующей таблице приведены некоторые наиболее употребительные значения для спецификации форматирования.

Символ Где применяется Что указывает 0 флаг Заполнение нулями слева - флаг Выравнивание по левому краю + флаг Обязательный вывод знака числа пробел флаг Использовать пробел на месте знака числа d, i спецификатор Знаковое целое u спецификатор Беззнаковое целое o спецификатор Восьмеричное беззнаковое целое x, X спецификатор Шестнадцатеричное беззнаковое целое (со строчными или прописными латинскими буквами) e, E спецификатор Число с плавающей запятой в формате с экспонентой f, F спецификатор Число с плавающей запятой g, G спецификатор Число с плавающей точкой в более коротком написании (автоматически выбирается e или f) с спецификатор Одиночный символ (целое число или односимвольная строка) r спецификатор Любой объект, приведенный к строке функцией repr() s спецификатор Любой объект, приведенный к строке функцией str() % спецификатор Знак процента. Для задания одиночного процента необходимо записать %%

Индексы и срезы

Следует напомнить, что строки являются неизменчивыми последовательностями, поэтому к ним можно применять операции взятия элемента по индексу и срезы:

>>> s = «транспорт»

>>> print s[0], s[-1]

т т

>>> print s[-4:]

порт

>>> print s[:5]

транс

>>> print s[4:8]

спор

Примечание:

При выделении среза нумеруются не символы строки, а промежутки между ними.

Формат строки Python () Метод

❮ Строковые методы


Пример

Вставьте цену в местозаполнитель, цена должна быть в формате с двумя десятичными знаками с фиксированной точкой:

txt = «Всего за {price:. 2f} долларов!»
print(txt.format(price = 49))

Попробуйте сами »


Определение и использование

Метод format() форматирует указанные значение(я) и вставьте их в местозаполнитель строки.

Заполнитель определяется с помощью фигурных скобок: {}. Узнайте больше о заполнители в разделе «Заполнители» ниже.

Метод format() возвращает форматированный нить.


Синтаксис

строка .format( значение1, значение2… )

Значения параметров

Параметр 9 0042 Описание
значение1, значение2… Обязательно. Одно или несколько значений, которые следует отформатировать и вставить в Струна.

Значения представляют собой список значений, разделенных запятыми, список ключей=значений или их комбинация.

Значения могут относиться к любому типу данных.


Заполнители

Заполнители можно идентифицировать с помощью именованных индексов {цена} , номер индексы {0} или даже пустые заполнители {} .

Пример

Использование разных значений заполнителей:

txt1 = «Мой имя {fname}, я {возраст}».format(fname = «Джон», возраст = 36)
txt2 = «Мой имя {0}, я {1}».format(«Джон»,36)
txt3 = «Мой имя {}, я {}».format(«John»,36)

Попробуйте сами »

Типы форматирования

результат:

:< Попробуйте Результат выравнивается по левому краю (в доступном пространстве)
:> Попробуйте Выравнивает результат по правому краю (в доступном пространстве) 9 Попробуйте Центр выравнивает результат (в доступном пространстве)
:= Попробуйте Помещает знак в крайнее левое положение
:+ Попробуйте Используйте знак плюс, чтобы указать, является ли результат положительным или отрицательным
:- Попробуйте Используйте знак минус только для отрицательных значений
Попробуйте Используйте пробел, чтобы вставить дополнительный пробел перед положительными числами (и знак минус перед отрицательными числами)
:, Попробуйте Использовать запятую в качестве разделителя тысяч
:_ Попробуйте Использовать подчеркивание в качестве разделителя тысяч
Попробуйте Двоичный формат
Преобразует значение в соответствующий символ Юникода
Попробуйте Десятичный формат
Попробуйте Научный формат, со строчной буквой e
Попробуйте Научный формат, с заглавной буквой E
Попробуйте Фиксированный формат номера точки
:F Попробуйте Фиксированный формат номера точки, в верхнем регистре (показать инф и нан как INF и НАН )
Общий формат
Общий формат (используется заглавная буква E для научных обозначений)
Попробуйте Восьмеричный формат
Попробуйте Шестнадцатеричный формат, нижний регистр
Попробуйте Шестнадцатеричный формат, верхний регистр
:n Числовой формат
:% Попробуйте Процентный формат

❮ Строковые методы

ВЫБОР ЦВЕТА



Лучшие учебники
Учебник HTML
Учебник CSS
Учебник JavaScript
How To Tutorial
Учебник SQL
Учебник Python
Учебник W3. CSS
Учебник Bootstrap
Учебник PHP
Учебник Java
Учебник C++
Учебник jQuery
9000 3

Лучшие ссылки
Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery

Основные примеры
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery


ФОРУМ | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

Copyright 1999-2023 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.

Строковые функции Python: 12 интерактивных примеров

В кодировании строки представляют собой последовательности символов, расположенные в одной строке кода. Они неизменяемы, то есть их значение не может быть изменено без создания нового значения.

Python оснащен рядом строковых функций, которые вы можете использовать для выполнения всех типов задач на своем веб-сайте. Вы можете редактировать текст, изменять формат различных символов и настраивать внешний вид вашей копии на основе различных входных данных в вашем коде.

Мы составили следующий список строковых функций Python в качестве справочного материала, который вы можете использовать при написании кода. Используйте этот список, а также модуль интерактивного кода, чтобы ознакомиться со строковыми функциями и стать более опытным программистом на Python.

     
строка.capitalize() полосы() нижний()
ввод() верхний() найти()
разделить() присоединиться() формат()
стр() название() реверс()

Используйте эту таблицу для перехода к определенным функциям Python. Попробуйте приведенные ниже функции, скопировав пример кода в этот интерактивный модуль кода. Выполните вывод кода, нажав кнопку воспроизведения (горизонтальный треугольник).

1. Функция использования заглавных букв: string.capitalize()

Функция capitalize() возвращает первый символ строки в виде прописной буквы, а остальные символы — в виде строчной буквы.

Пример функции с заглавными буквами:

mystatement = «добро пожаловать в hubspot»

myvalue = mystatement.capitalize()

print(myvalue)

Вывод:

Добро пожаловать в hubspot

Попробуйте с кодовым модулем

2.

Функция ввода: input()

Функция input() принимает пользовательский ввод и возвращает ввод в виде строки.

Функция ввода Пример:

print(«Какой твой любимый цвет?»)

x = input()

print(x + «мой любимый цвет!»)

Вывод:

Какой твой любимый цвет цвет?

Синий

Синий — мой любимый цвет!

Попробуйте с кодовым модулем

3. Функция разделения: split()

Функция split() разбивает большие строки на меньшие, разбивая строку на список.

Раздельная функция Пример:

statement = «python — это весело и просто»

myvalue = statement.split()

print(myvalue)

Вывод:

[‘python’, ‘is’, ‘fun’, ‘and’, ‘ easy’]

Попробуйте с модулем кода

4. Функция String: str()

Функция string или str() превращает указанный объект в строку.

Строковая функция Пример:

myvalue = str(5)

print(myvalue)

Вывод:

5

Попробуйте с модулем кода

5.

Функция Strip: strip()

Функция или метод strip() удаляет из строки все начальные и конечные символы.

Функция Strip Пример:

mystatement = ‘     Удаляет все ненужные пробелы  ‘

print(mystatement.strip())

Вывод:

Удаляет все ненужные пробелы

Попробуйте с модулем кода 900 03

6. Прописные буквы Функция: upper()

Функция верхнего регистра или upper() преобразует все буквы строки в верхний регистр.

Функция в верхнем регистре Пример:

mystatement = ‘добро пожаловать в hubspot’

print(mystatement.upper())

Вывод:

ДОБРО ПОЖАЛОВАТЬ В HUBSPOT

Попробуйте с кодовым модулем

7. Функция присоединения: присоединение( )

Функция join() возвращает строку, объединяя все элементы в итерируемом объекте вместе.

Пример функции соединения:

размеры = («4», «6», «8»)

x = «x».join(dimensions)

print(x)

Вывод:

4x6x8

Попробуйте использовать модуль кода

8.

 Функция Title: title()

Функция title() делает первый символ каждого слова в строке заглавным.

Название Функция Пример:

y = «блог веб-сайта hubSpot»

x = y.title()

print(x)

Вывод:

Блог веб-сайта HubSpot

Попробуйте с кодовый модуль

9. Функция нижнего регистра: lower()

Функция нижнего() или нижнего регистра возвращает строку, в которой все символы являются строчными.

Нижний регистр Пример функции:

x = ‘WELCOME TO HUBSPOT’

print(x.lower())

Вывод:

welcome to hubspot

Попробуйте с кодовым модулем

9000 5 10. Функция поиска: найти( )

Функция find() ищет заданную строку и возвращает ее индекс в строке Python.

Пример функции поиска:

my_str = «Python — мощный язык»

index_result = my_str.find(«язык»)

print(index_result)

Вывод:

21

Попробуйте использовать модуль кода

11.

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *