πŸ” Как Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· массива Python: простой ΠΈ эффСктивный способ

Как Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· массива Python?

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· массива Π² Python, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ индСксирования ΠΈ срСзы.

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ элСмСнт массива ΠΏΠΎ Π΅Π³ΠΎ индСксу, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

массив = [элСмСнт1, элСмСнт2, элСмСнт3]
элСмСнт = массив[индСкс]

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт массива:

массив = [10, 20, 30]
элСмСнт = массив[1]

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "элСмСнт" Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ 20.

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ нСсколько элСмСнтов массива, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ срСзы:

массив = [элСмСнт1, элСмСнт2, элСмСнт3, элСмСнт4, элСмСнт5]
подмассив = массив[Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ_индСкс:ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ_индСкс]

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ элСмСнты с индСксами ΠΎΡ‚ 1 Π΄ΠΎ 3 (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ):

массив = [10, 20, 30, 40, 50]
подмассив = массив[1:4]

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "подмассив" Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ [20, 30, 40]. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСкс Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² срСз.

НадСюсь, эта информация ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· массивов Π² Python!

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

Как Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· массива Python

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

1. Π˜Π½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡ массивов

Один ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных способов получСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· массива - это использованиС индСксов. Π’ Python индСксация начинаСтся с 0, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт массива ΠΈΠΌΠ΅Π΅Ρ‚ индСкс 0, Π²Ρ‚ΠΎΡ€ΠΎΠΉ - 1 ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ элСмСнт массива ΠΏΠΎ индСксу, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

fruits = ['яблоко', 'банан', 'апСльсин']
first_fruit = fruits[0]
print(first_fruit)  # Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚: яблоко

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создали массив 'fruits' с трСмя элСмСнтами, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт (яблоко) ΠΏΠΎ индСксу 0.

2. Π‘Ρ€Π΅Π·Ρ‹ массивов

Π‘Ρ€Π΅Π·Ρ‹ (slices) ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ способ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Π² массивС. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ подмассив, состоящий ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… элСмСнтов. Π‘Ρ€Π΅Π·Ρ‹ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ 'Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс: ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСкс'.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
sub_list = numbers[2:6]
print(sub_list)  # Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚: [3, 4, 5, 6]

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создали массив 'numbers' с числами ΠΎΡ‚ 1 Π΄ΠΎ 10, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ подмассив, начиная с элСмСнта с индСксом 2 ΠΈ заканчивая элСмСнтом с индСксом 5 (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π΅Π³ΠΎ).

3. ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° .get()

ΠœΠ΅Ρ‚ΠΎΠ΄ .get() прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ элСмСнт массива ΠΏΠΎ Π΅Π³ΠΎ индСксу. Однако, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ индСксации, ΠΏΡ€ΠΈ использовании ΠΌΠ΅Ρ‚ΠΎΠ΄Π° .get() Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ, Ссли ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ индСкс Π½Π΅ сущСствуСт. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ages = {'Алиса': 25, 'Π‘ΠΎΠ±': 32, 'ΠšΠ°Ρ€Π»': 41}
bob_age = ages.get('Π‘ΠΎΠ±', 'НСизвСстно')
emily_age = ages.get('Π­ΠΌΠΈΠ»ΠΈ', 'НСизвСстно')
print(bob_age)  # Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚: 32
print(emily_age)  # Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚: НСизвСстно

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создали ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ 'ages', Π³Π΄Π΅ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π° людСй, Π° значСниями - ΠΈΡ… возраста. Π—Π°Ρ‚Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ .get(), ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ возраст Π‘ΠΎΠ±Π° (32) ΠΈ возраст Π­ΠΌΠΈΠ»ΠΈ (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π­ΠΌΠΈΠ»ΠΈ Π½Π΅Ρ‚ Π² словарС).

4. ИспользованиС numpy.array()

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с массивами Π΄Π°Π½Π½Ρ‹Ρ… Π±ΠΎΠ»Π΅Π΅ слоТных структур, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы, Ρ‚ΠΎ Π²Π°ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ инструмСнты, прСдоставляСмыС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ NumPy. Одним ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… инструмСнтов являСтся функция numpy.array(), которая позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ массивы с Π±ΠΎΠ»Π΅Π΅ слоТной структурой Π΄Π°Π½Π½Ρ‹Ρ…. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

import numpy as np

matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
first_row = matrix[0]
element = matrix[1, 2]
print(first_row)  # Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚: [1, 2, 3]
print(element)  # Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚: 6

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ NumPy с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова import ΠΈ создали Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив 'matrix' с числами ΠΎΡ‚ 1 Π΄ΠΎ 9. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку массива (с индСксом 0) ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ элСмСнт массива (строка 2, столбСц 3).

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

Зная Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Π² Python-массивах, Π²Ρ‹ смоТСтС Π±ΠΎΠ»Π΅Π΅ эффСктивно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с вашими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ, срСзы, ΠΌΠ΅Ρ‚ΠΎΠ΄ .get() ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ NumPy Π² зависимости ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… потрСбностСй. ΠšΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ эти способы для достиТСния ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ².

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

Π£Ρ€ΠΎΠΊΠΈ Python - Бписки (ΠœΠ°ΡΡΠΈΠ²Ρ‹)

12 Бписки ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ Π½ΠΈΠΌΠΈ Python

#6. РСализация динамичСского массива Π½Π° Python | Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

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

πŸ”Ž Как ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ элСмСнт списка с числом Π² Python? ОсновноС руководство ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

🎨 Как Π·Π°ΠΊΡ€Π°ΡΠΈΡ‚ΡŒ Ρ„ΠΈΠ³ΡƒΡ€Ρƒ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: простыС шаги ΠΈ совСты πŸ–ŒοΈ

πŸ’‘ Как ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΠΈΡ‚ΠΎΠ½Ρƒ с нуля: простыС шаги для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ” Как Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· массива Python: простой ΠΈ эффСктивный способ

πŸ’» Как пСрСвСсти число 10 Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ систСму счислСния ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Python?

πŸ” Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ - руководство ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

РазбСрСмся, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ сплит Π² Python ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ