Индексирование и нарезка — важная концепция в Python, особенно когда мы используем строки.
Индексирование:
WKT, строка — это не что иное, как последовательность символов.
Таким образом, каждый символ имеет позицию, а именно индекс, и доступ к его позиции в этой конкретной строке называется индексацией.
В Python индексация начинается с нуля, т. е. первый символ строки имеет индекс (позицию) 0, а не единицу, затем индекс (позиция) второго символа равен 1 и так далее.
]Например,
> H E L L O W O R L D > 0 1 2 3 4 5 6 7 8 9
Это называется положительным индексированием, поскольку для обозначения индексов мы использовали только положительные числа.
Вы можете спросить: «Значит, у нас тоже есть отрицательные индексы??»
Конечно, но здесь у нас нет нуля в качестве первой позиции, поскольку это не отрицательное число.
Отрицательная индексация позволяет нам получать доступ к символам с конца строки, т. е. последний символ имеет индекс -1, предпоследний символ имеет индекс -2 и так далее.
> H E L L O W O R L D > -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
word = "HELLOWORLD" print(word[0]) print(word[5]) H W
Сходным образом,
print(word[-1]) print(word[-6]) D 0
Это все, что касается индексации.
Нарезка:
Думайте о том, чтобы разрезать веревку, как обрезании кусочка торта от целого торта. Мы можем указать, где начать обрезку (индекс), где закончить (конечный индекс) и даже насколько большим должен быть каждый фрагмент (шаг). Таким образом, мы можем создавать меньшие порции торта (или ниток) именно так, как нам нравится!
В Python разрезание строки позволяет нам выделить определенные ее части, указав, где начинать и где заканчивать строку.
Так, например, если сообщение содержит «HELLOWORLD», то сообщение [3:7] дает вам «LOWO», поскольку оно начинается с индекса 3 («L») и заканчивается непосредственно перед индексом 7 («D»). Таким образом, мы можем извлечь любую часть строки, которая нам нужна!
— основной синтаксис для нарезки:
string[start:stop]
text = "HappyBirthday" print(text[0:5]) print(text[5:13]) Happy Birthday
При разрезании строки в Python мы можем просто опустить начальный или конечный индекс, чтобы разрезать строку от начала или до конца.
Вот так просто!
- Нарезка с шагом,
Чтобы указать интервал между символами при разрезании строки в Python, просто добавьте двоеточие, а затем значение шага:
string[start:stop:step]
Это позволяет контролировать, как мы хотим пропускать символы строки при создании фрагмента.
message = "HELLOWORLD" print(message[1::2]) EORL
message[1::2] начинает разрезать строку от индекса 1 («E») до конца строки с шагом 2.
Следовательно, он включает символы с индексами 1, 3, 5 и 7, что дает нам «EORL».
Пока мы не рассмотрели позитивную нарезку, а теперь давайте узнаем о негативной нарезке.
– отрицательная нарезка:
message = "HELLOWORLD" print(message[-2:2:-1]) ROWOL
Давайте рассмотрим некоторые вопросы.
#Напишите функцию, которая принимает строку и возвращает новую строку, состоящую из ее первого и последнего символа.
word = "Python" end = word[0] word[5] print(end) Pn
#Напишите функцию, которая переворачивает заданную строку.
word = "Python" print(word[::-1]) nohtyP
#Для заданной строки извлеките и верните подстроку с 3-го по 8-й символ (включительно).
text = "MichaelJackson" print(text[3:9]) haelJa
#При наличии адреса электронной почты извлеките и верните домен.
email = "[email protected]" domain = email[:-10] print(domain) hello_world
#Напишите функцию, которая возвращает каждый третий символ заданной строки.
text = "Programming" print(text[::3]) Pgmn
#Напишите функцию, которая пропускает каждый второй символ, а затем переворачивает полученную строку.
text1 = "Programming" print(text1[::-2]) gimroP
#Напишите функцию, которая извлекает и возвращает символы по четным индексам из заданной строки.
text = "Programming" print(text[::2]) Pormig
Хорошо, это основное.
...
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3