«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Python — индексирование и нарезка

Python — индексирование и нарезка

Опубликовано 1 августа 2024 г.
Просматривать:263

Python - Indexing and Slicing

Индексирование и нарезка — важная концепция в 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

Хорошо, это основное.

...

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/abys_learning_2024/python-indexing-and-slicing-2moh?1. Если обнаружено какое-либо нарушение прав, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3