πŸ” Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ - подробная инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°ΠΊ подчСркивания ΠΏΠ΅Ρ€Π΅Π΄ индСксируСмым элСмСнтом. Π­Ρ‚ΠΎΡ‚ Π·Π½Π°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обозначСния Π½ΠΈΠΆΠ½Π΅Π³ΠΎ индСкса Π² строках ΠΈ списках.


variable = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки"
print(variable[3])  # Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π±ΡƒΠΊΠ²Ρƒ "ΠΈ"

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ символ "ΠΈ", находящийся Π½Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ индСксС строки.

Аналогично, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с элСмСнтами списка:


numbers = [1, 2, 3, 4, 5]
print(numbers[2])  # Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ число 3

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт списка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ 3.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

НиТний индСкс Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ прСдставляСт собой ΠΎΡΠΎΠ±ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ записи, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΊ элСмСнтам Π² строках ΠΈ списках. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обращСния ΠΊ элСмСнту ΠΏΠΎ Π΅Π³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅, Π²Π°ΠΌ понадобятся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги:

Π¨Π°Π³ 1: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ строки ΠΈΠ»ΠΈ списка

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ Π½Π°Ρ‡Π½Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ строку ΠΈΠ»ΠΈ список, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. НиТний индСкс Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΠΎΠ±ΠΎΠΈΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания строки:


    text = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
    

И Π²ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания списка:


    numbers = [1, 2, 3, 4, 5]
    

Шаг 2: ИспользованиС ниТнСго индСкса

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Ρƒ нас Π΅ΡΡ‚ΡŒ строка ΠΈΠ»ΠΈ список, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс для доступа ΠΊ ΠΈΡ… элСмСнтам. НиТний индСкс начинаСтся с нуля, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ индСкс 0, Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ индСкс 1 ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:


    print(text[0])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ "П"
    print(numbers[2])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 3
    

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ элСмСнтам с ΠΊΠΎΠ½Ρ†Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. НапримСр:


    print(text[-1])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ "!"
    print(numbers[-2])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 4
    

Π¨Π°Π³ 3: ИзмСнСниС элСмСнтов ΠΏΠΎ индСксу

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт Π² строкС ΠΈΠ»ΠΈ спискС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² сочСтании с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ присваивания. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:


    text[0] = "М"  # Ошибка! Π‘Ρ‚Ρ€ΠΎΠΊΠΈ нСизмСняСмы
    numbers[2] = 10  # Π˜Π·ΠΌΠ΅Π½ΡΠ΅Ρ‚ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт Π½Π° 10
    

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ строки нСизмСняСмы, поэтому ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Бписки ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ, поэтому ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ элСмСнта Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΌ.

Π¨Π°Π³ 4: ИспользованиС срСзов

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ индСкса Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ срСзы - подстроки ΠΈΠ»ΠΈ подсписки ΠΈΠ· исходной ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Бинтаксис срСзов выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:


    sequence[start:end:step]
    

Π“Π΄Π΅:

  • start - индСкс элСмСнта, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ начинаСтся срСз
  • end - индСкс элСмСнта, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ заканчиваСтся срСз (Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ сам элСмСнт)
  • step - шаг, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ происходит Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° элСмСнтов Π² срСзС (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π΅Π½ 1)

Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² срСзов:


    print(text[0:6])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ "ΠŸΡ€ΠΈΠ²Π΅Ρ‚"
    print(numbers[1:4])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ [2, 3, 4]
    print(text[::2])  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ "ПиС ΠΈΡ€"
    

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ для доступа ΠΊ элСмСнтам Π² строках ΠΈ списках. НиТний индСкс являСтся ΠΌΠΎΡ‰Π½Ρ‹ΠΌ инструмСнтом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт эффСктивно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ индСксы Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с нуля, ΠΈ Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы для доступа ΠΊ элСмСнтам с ΠΊΠΎΠ½Ρ†Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π£Π΄Π°Ρ‡ΠΈ Π² вашСм ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠΈ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Python. Бписки. Π˜Π½Π΄Π΅ΠΊΡΡ‹

Π£Ρ€ΠΎΠΊ 10 Π‘Ρ‚Ρ€ΠΎΠΊΠΈ: индСксы ΠΈ срСзы Python

13 Бписки: индСксы ΠΈ срСзы Python

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Как Π½Π°ΠΉΡ‚ΠΈ Π΄Π»ΠΈΠ½Ρƒ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅? πŸ”πŸ Учимся ΠΈΠ·ΠΌΠ΅Ρ€ΡΡ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ Π² Python

πŸ”“ Как ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» python Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ

Π›ΠΈΠ½ΠΊΡŽ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Linq Where Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² Python?

πŸ” Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½ΠΈΠΆΠ½ΠΈΠΉ индСкс Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ - подробная инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ Python Π² Jupyter?

πŸ”§ Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ requests python Π½Π° PyCharm: пошаговая инструкция

πŸ—‘οΈ Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ с содСрТимым python 🐍