• I






      
           

Научно-популярный образовательный ресурс для юных и начинающих радиолюбителей - Popular science educational resource for young and novice hams

Основы электричества, учебные материалы и опыт профессионалов - Basics of electricity, educational materials and professional experience

КОНКУРС
language
 
Поиск junradio

Радиодетали
ОК
Сервисы

Stock Images
Покупка - продажа
Фото и изображений


 
Выгодный обмен
электронных валют

Друзья JR



JUNIOR RADIO

 

Строки в Python

 

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

Строковые литералы в Python

В Python строковые литералы представлены одинарными кавычками ( ' ') или двойными кавычками ( " "). Это означает, что если вы используете одинарные или двойные кавычки, это будет считаться одним и тем же значением. Например, строка 'pimylifeup'считается такой же, как "pimylifeup"интерпретатор Python. Также возможно отобразить строковый литерал без необходимости сначала назначать ему переменную, используя print()функцию.

print("pimylifeup")

print('pimylifeup')

Назначение строки переменной в Python

Присвоение строки переменной Python - простая задача. Чтобы присвоить строку переменной, все, что вам нужно сделать, это использовать имя переменной, за которым следует знак равенства ( =). за которым следует строка, которую вы хотите установить ( "example"). Просто не забудьте определить строку, которую нужно заключить в одинарные или двойные кавычки. В нашем примере ниже вы можете видеть, что мы установили присвоение нашей переменной, которая называется exampleстроковым значением "pimylifeup".

example = "pimylifeup"

print(example)

Определение многострочной строки

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

Пример использования двойных кавычек

exampleString = """Lorem ipsum dolor sit amet,

consectetur adipiscing elit.

Cras quis massa et ex faucibus ullamcorper.

Nullam scelerisque ex magna, molestie."""

print(exampleString)

Строки - это массивы

Одна важная вещь, которую следует понимать в отношении строк в Python, заключается в том, что с ними можно обращаться как с массивом . Каждый символ - это позиция в массиве, при этом первая буква строки имеет индекс 0 . Например, давайте посмотрим, как pimylifeupбудет выглядеть строка со значением « », если мы захотим проверить каждую букву по отдельности.

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]

 P   I   M   Y   L   I   F   E   U   P

Взять одну букву из строки

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

exampleStringName[Index Position]

Все, что вам нужно сделать, это использовать вашу строковую переменную, квадратные скобки ( [ ]) и позицию индекса буквы, которую вы хотите захватить.

Пример получения одного символа

Например, предположим, что у нас есть строка arrayStringExampleсо значением "PiMyLifeUp Python Strings Example". Если мы хотим получить третью букву этой строки, нам нужно будет использовать позицию индекса2 в квадратных скобках ( [ ]). Помните, что при подсчете 0 - это первая буква строки.

arrayStringExample = "PiMyLifeUp Python Strings Example"

print(arrayStringExample[2])

Нарезка строки

Так же, как и с массивами в Python, можно разрезать строку. Разрезая строку, вы можете получить набор символов вместо одного.

exampleStringName[StartIndexPosition:EndIndexPosition]

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

Пример использования фрагмента в строке

В этом примере мы предположим, что у нас есть переменная с именем « exampleStringName» с "PiMyLifeUp Python Strings Example"установленной для нее строкой .

exampleStringName = "PiMyLifeUp Python Strings Example"

С этим мы собираемся убрать слово "Python"из нашей строки.

Чтобы получить это слово, нам нужно выполнить отрезок от индекса 11 (начало слова) до индекса 17 (сразу после слова).

exampleStringName = "PiMyLifeUp Python Strings Example"

print(exampleStringName[11:17])

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

Python

Получение длины строки

Есть разные моменты, когда вы можете захотеть получить длину строки в Python. Чтобы получить длину строки, нам нужно использовать len()функцию.

length = len(VariableName)

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

Пример использования len()для получения длины строки

В этом примере мы собираемся получить длину строки со значением "PiMyLifeUp Python Strings Example". Мы собираемся добиться этого, используя len()функцию.

exampleStringName = "PiMyLifeUp Python Strings Example"

print(len(exampleStringName))

После запуска этого примера кода вы должны вернуть длину нашей строки.

33

Вы должны знать, что len()метод возвращает количество символов, считая от 1, а не от 0. Если вы хотите использовать этот метод для получения последнего символа в строке, вам нужно будет вычесть единицу из результата.

Экранирование символов в строках

Иногда есть определенные символы, которые вы можете захотеть использовать в своей строке, которые могут разорвать строку. Чтобы решить эту проблему, мы собираемся погрузиться в то, что называется экранированием. В этом разделе вы узнаете о некоторых случаях использования escape-символа ( \) в Python.

Экранирование также может использоваться для определения определенных вещей, таких как перевод строки ( \n).

Пример незаконного персонажа

Одна из первых вещей, которую вы должны научиться определять, - это использование « незаконных » символов. Недопустимый символ - это любой символ, который нарушает определение этой строки, что делает невозможным ее понимание интерпретатором. Чтобы продемонстрировать это, мы собираемся использовать образец строки, в которой мы используем двойные кавычки для определения строки, а также пытаемся использовать их внутри строки.

sampleString = "Hello this is a simple sample "string" that showcases escaping"

Если вы попытаетесь запустить этот код в Python, вы увидите следующую ошибку.

SyntaxError: invalid syntax

Эта ошибка указывает на то, что интерпретатор Python не смог понять написанное, поскольку оно не соответствует ожидаемому синтаксису. Чтобы решить эту ошибку, вы можете использовать escape-символ ( \) рядом с каждой из двойных кавычек. Таким образом, Python будет интерпретировать их как буквальные двойные кавычки, а не как часть синтаксиса программирования.

sampleString = "Hello this is a simple sample \"string\" that showcases escaping"

Другое использование символа Escape

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

 

Код

Результат

\'

Одиночная кавычка ( ')

\"

Двойные кавычки ( ")

\\

Обратная косая черта ( \)

\n

Новая линия

\r

Возврат каретки

\t

Вкладка

\b

Backspace

\f

Подача формы

\ooo

Восьмеричное значение

\xhh

Шестнадцатеричное значение

 

Проверка, содержит ли строка

Если вы хотите проверить, содержит ли строка определенную фразу или нет, у Python есть два ключевых слова, которые пригодятся. Эти два ключевых слова - inи not in. Оба этих ключевых слова чувствительны к регистру при сравнении, поэтому слово « Hello» не будет соответствовать « hello».

"Hello" in samplePhrase

"Hello" not in samplePhrase

Оба этих ключевых слова работают, когда вы сначала указываете символ (или строку), который хотите проверить, затем ключевое слово ( inили not in), а затем строку, которую вы хотите проверить. В наших двух примерах мы будем использовать переменную с именем examplePhrase, имеющую значение "Pi My Life Up's Tutorial on String in Python".

inКлючевые слова и строки

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

"Hello" in samplePhrase

inКлючевое слово будет возвращать Правда , когда фраза или символ найден и значение False , когда I'ts нет.

Пример использования inключевого слова в строках

Чтобы показать вам, как inработает ключевое слово, мы собираемся проверить нашу samplePhraseпеременную, чтобы увидеть, существует ли в ней слово « Tutorial».

samplePhrase = "Pi My Life Up's Tutorial on String in Python"

hasTutorial = "Tutorial" in samplePhrase

print(hasTutorial)

Поскольку мы используем inключевое слово, мы должны увидеть Trueрезультат, который будет распечатан в приведенном выше примере, поскольку слово Tutorialсуществует во фразе.

not inКлючевые слова и строки

not inМожно использовать ключевое слово , чтобы проверить , является ли конкретная строка или символ не присутствует в строке.

"Hello" not in samplePhrase

Использование not inключевого слова приведет к возврату, Trueкогда фраза или символ не существует в строке и Falseкогда он существует.

Пример использования inключевого слова в строках

Чтобы дать вам представление о том, как not inработает ключевое слово, мы собираемся проверить, содержит ли наша примерная фраза это слово "Raspberry".

samplePhrase = "Pi My Life Up's Tutorial on String in Python"

doesntHaveRaspberry = "Raspberry" in samplePhrase

print(doesntHaveRaspberry)

Поскольку наша фраза не содержит этого слова Raspberry, вы должны увидеть результат True, распечатанный Python.

Форматирование строк

Одна из самых полезных вещей, которые нужно знать об обработке строк в Python, - это их форматирование. В этом разделе вы быстро познакомитесь с одной из наиболее полезных строковых функций, format()функцией и заполнителями в фигурных скобках ( { }). Если вы следовали нашему руководству по переменным Python , вы уже должны были знать, что нельзя добавлять числовое число в строку. Несмотря на то, что есть способ преобразовать число в строку, есть более чистый способ добиться этого.

format()Метод

Используя этот format()метод, вы можете взять строку в Python, содержащую заполнители ( { }), и вставить в нее данные.

"My Example String with {}".format("Replacements Go Here")

Например, используя этот метод, мы можем взять строку вроде "My age is { }"и вставить значение 20.

"My age is {}".format(20)

Каждый дополнительный заполнитель, который вы добавляете, требует, чтобы вы указали дополнительные параметры в .format()методе.

Как использовать пустые заполнители

Самый простой способ использовать заполнители с .format()методом - использовать пустые {}заполнители. Порядок определения заполнителей совпадает с порядком, в котором их значения должны быть указаны в format()методе. Чтобы показать вам, как это работает, мы собираемся дать вам пример использования пустых заполнителей в Python.

Пример пустых заполнителей

В этом примере мы начнем с переменной с именем exampleString.

В этой переменной будет храниться строка с фразой ."My name is {}, and I am {}"

В эту строку мы вставим слово "PiMyLifeUp"и число 5с помощью метода format ().

exampleString = "My name is {}, and I am {}"

exampleString.format("PiMyLifeUp", 5)

print(exampleString)

Из этого кода вы должны увидеть результат, как показано ниже.

My name is PiMyLifeUp, and I am 5

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

exampleString = "My name is {}, and I am {}"

exampleString.format(5, "PiMyLifeUp")

My name is 5, and I am PiMyLifeUp

Пронумерованные заполнители в Python

В Python вы также можете пронумеровать каждый из ваших заполнителей. Дав ему номер, вы можете диктовать порядок, в котором вы указываете его значение. Вы можете указать число, поместив его между двумя фигурными скобками ( ).{0}

"My age is {1}, my name is {0}".format("PiMyLifeUp", 5)

При указании позиции всегда помните, что отсчет начинается с 0 , а не с 1 . Использование пронумерованных заполнителей может быть полезно при форматировании разных строк, где расположение заполнителей отличается. Это также полезно, если вы хотите использовать значение для этого заполнителя в нескольких местах в одной строке.

Пример использования пронумерованных заполнителей

В этом примере мы собираемся показать вам, как работают нумерованные заполнители, показав вам две разные строки, в которые мы передаем format()параметры имени .

Чтобы показать это, мы собираемся использовать строку и строку ."My age is {0}, my name is {1}""My name is {1}, my age is {0}"

exampleString1 = "My age is {0}, my name is {1}"

exampleString2 = "My name is {1}, my age is {0}"

print(exampleString1.format(5, "PiMyLifeUp"))

print(exampleString2.format(5, "PiMyLifeUp"))

Если бы вы запускали этот фрагмент кода в Python, вы бы получили результат, подобный приведенному ниже.

My age is 5, my name is PiMyLifeUp

My name is PiMyLifeUp, my age is 5.

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

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

Третий и последний способ использования заполнителей в Python - использовать именованные заполнители. Это влечет за собой то, что вы указываете имя в фигурных скобках ( ).{ NAME } Это имя, которое вы указываете, имеет решающее значение, поскольку вам нужно будет использовать его при установке значения в format()методе. Для каждого заполнителя вам необходимо использовать имя заполнителя, за которым следует знак равенства ( =), а затем значение, которое вы хотите присвоить ему.

"Welcome to {website}".format(website="PiMyLifeUp.com")

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

Пример использования именованных заполнителей

Ниже мы дадим вам краткое представление о том, как использовать именованный заполнитель. В этом примере мы будем использовать строку "Hello {name}, welcome to {website}" С первого взгляда вы можете увидеть, что в этой строке есть два именованных заполнителя nameи website.

exampleString = "Hello {name}, welcome to {website}"

print(exampleString.format(name="World", website="PiMyLifeUp.com"))

Используя приведенный выше код, мы вставляем текст "World"вместо имени  и строку "PiMyLifeUp.com"вместо веб-сайта . Если вы запустите приведенный выше код на Python, вы должны получить следующий результат.

Hello World, welcome to PiMyLifeUp.com

Методы манипулирования строками

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

Удаление пробелов с помощью strip()

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

stringVariableName = stringVariableName.strip()

Используя этот метод, вы можете взять строку вроде " PiMyLifeUP String Example "и превратить ее в "PiMyLifeUp String Example". Этот метод может быть полезен для обработки строк, где могли быть добавлены лишние пробелы.

Пример использования strip()метода

Ниже мы покажем вам пример использования этой strip()функции. Мы собираемся определить строку с именем exampleStringсо значением " Hello I Have Unneeded Whitespace ". Как видите, мы добавили два символа пробела в начало и конец строки, которые нам не нужны.

exampleString = " Hello I have Unneeded Whitespace "

print(exampleString.strip())

Используя метод полосы, мы можем вывести следующую строку.

Hello I have Unneeded Whitespace

Вы увидите, что оба пробела на концах строки удалены.

Преобразование строки в нижний регистр с помощью lower()

Этот lower()метод можно использовать для полного преобразования строки в нижний регистр.

stringVariableName = stringVariableName.lower()

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

Например, строка "PiMyLifeUP"станет "pimyifeup".

Пример использования lower()метода

Чтобы показать вам, как это работает, мы собираемся использовать lower()метод для нашей переменной, вызываемой exampleStringсо значением "MiXeD CaSE StRiNG ExAMPLE".

exampleString = "MiXeD CaSE StRiNG ExAMPLE"

print(exampleString.lower())

После запуска этого фрагмента кода Python вы должны получить результат, как показано ниже.

mixed case string example

Вы увидите, что каждая буква преобразована в нижний регистр.

Преобразование строки в верхний регистр с помощью upper()

Этот upper()метод противоположен lower()методу в том, что он преобразует все буквы в их эквивалент в верхнем регистре.

stringVariableName = stringVariableName.upper()

Используя этот метод, вы можете преобразовать строку так, чтобы каждая буква была в верхнем регистре. Например, с помощью этого метода мы можем легко изменить строку "pimylifeup"на "PIMYLIFEUP".

Пример использования upper()метода

Использование этого upper()метода - довольно простой процесс. В этом примере мы покажем вам, как использовать этот метод для преобразования строки нашего примера из "all lower case example string"в верхний регистр.

exampleString = "all lower case example string"

print(exampleString.upper())

Запустив приведенный выше код, вы должны увидеть следующий результат. Теперь каждая буква должна быть заглавной.

ALL LOWER CASE EXAMPLE STRING

Замена в строке с помощью replace()

Если вы хотите заменить элемент в строке, вы можете использовать этот replace()метод. Метод принимает три разных параметра. Первые два обязательны, третий - по желанию. Первые два обязательных параметра просят вас указать текст, который вы хотите найти , и текст, которым вы хотите его заменить . Третий параметр позволяет указать, сколько экземпляров вы хотите заменить.

stringVariableName = stringVariableName.replace("FIND", "REPLACE", [OCCURRENCES])

Используя этот метод, вы можете взять строку , как "Two Two Three Four Five"и заменить первое вхождение Twoс One.

Пример использования replace()метода

Ниже мы дадим вам два разных примера того, как вы можете использовать этот replace()метод.

Пример 1

В этом первом примере мы собираемся использовать пример строкового значения « Two Two Three Four Five» и заменить слово « Two» на « One». Мы делаем это с помощью replace()метода и анализа "Two"первого и "One"второго параметра. Итак, "Two"это значение, которое мы ищем, и "One"строка, которую мы хотим заменить на

exampleString = "Two Two Three Four Five"

print(exampleString.replace("Two", "One"))

Используя этот фрагмент кода, вы должны увидеть результат ниже.

One One Three Four Five

Из приведенного выше результата видно, что все вхождения Twoбыли заменены на One.

Пример 2

В этом примере мы возьмем ту же строку примера, что и выше, но на этот раз заменим только одно вхождение "Two" Мы достигаем этого, используя третий необязательный параметр. С этим параметром. мы передадим номер 1.

exampleString = "Two Two Three Four Five"

print(exampleString.replace("Two", "One", 1))

Из этого кода вы должны увидеть напечатанный следующий текст.

One Two Three Four Five

Как видите, "Two"заменено только одно вхождение , а второе осталось в строке.

Разделение строки с помощью split()метода

split()Метод может принимать строку и разделить его в список. Этот метод имеет необязательный параметр, который позволяет вам определить, что вы хотите использовать для разделителя . По умолчанию любой пробел используется как разделитель между элементами.

stringVariableName = stringVariableName.split([SEPERATOR])

Например, с помощью этого метода вы можете взять текст "one,two,three,four"и разбить его на список, например["one", "two", "three", "four"]

Пример использования split()метода

Ниже мы дадим вам два примера использования split()метода, один без использования параметра, а другой с определенным параметром разделителя.

Пример 1

В этом примере мы собираемся взять следующую строку "one two three four"и преобразовать ее в список. Поскольку каждый элемент отделяется только пробелом, мы можем использовать split()метод без использования необязательного параметра.

exampleString = "one two three four"

print(exampleString.split())

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

['one', 'two', 'three', 'four']

Пример 2

Давайте теперь возьмем другую строку, на этот раз, в которой ,для разделения каждого элемента используется запятая ( ), а не пробелы. Строка этого примера имеет значение "one,two,three,four".

exampleString = "one,two,three,four"

print(exampleString.split(','))

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

['one', 'two', 'three', 'four']

Надеюсь, теперь вы понимаете, как работать со строками в языке программирования Python.

 




Необходимо добавить материалы...
Результат опроса Результаты Все опросы нашего сайта Архив опросов
Всего голосовало: 373



          

Радио для всех© 2024