Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ списки Π² python

Бписки Π² Python: ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ основныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

ΠΠ²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ

Бписки Π² Python: ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ основныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Бписки Π² Python ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой упорядочСнныС измСняСмыС Π½Π°Π±ΠΎΡ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ 0. ΠŸΡ€ΠΈ этом ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ β€” ΠΎΡ‚ Ρ†Π΅Π»Ρ‹Ρ… чисСл Π΄ΠΎ строк. Бписки ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² сСбС списки.

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ разбСрёмся с Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ списков Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ рассмотрим ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ. Если Π²Ρ‹ ΠΈΠ·ΡƒΡ‡Π°Π΅Ρ‚Π΅ Python с нуля, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² памяти

ΠŸΡ€ΠΈ создании списка, Π² памяти рСзСрвируСтся пустая ΠΎΠ±Π»Π°ΡΡ‚ΡŒ. Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, это Π½ΠΈΡ‡Π΅ΠΌ Π½Π΅ отличаСтся ΠΎΡ‚ создания любого Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ содСрТимоС list ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ:

Π”ΠΎ Π·Π°ΠΌΠ΅Π½Ρ‹ элСмСнта ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ print(numbers[1]) Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ 2, Π° послС Π·Π°ΠΌΠ΅Π½Ρ‹ β€” 3.

БозданиС списка в Python

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ нСсколькими способами, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ пСрСчислСниСм элСмСнтов списка Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках:

ΠŸΡ€ΠΈ этом Π΅Π΄ΠΈΠ½ΠΈΡ†Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 0, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ print(numbers[0]) Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ 1.

Π’Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ списков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Допустим, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ list, состоящий ΠΈΠ· чисСл ΠΎΡ‚ 1 Π΄ΠΎ 5 Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ:

Π‘Ρ€Π΅Π·Ρ‹ (slice) списка

Π‘Ρ€Π΅Π·Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΠ΅ подмноТСство Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Π²Π΅Ρ€Π½Ρ‘Ρ‚ список с элСмСнтами, начиная индСксом 0 ΠΈ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€ΠΈ этом индСкс 2 ΠΈ Π²Ρ‹ΡˆΠ΅:

Π”Π°Π»Π΅Π΅ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ всё, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ элСмСнта Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 3:

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ начиная с индСкса 1 ΠΈ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°:

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ списками Python

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков Python

Index

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ совпавшСго элСмСнта. Поиск совпадСния происходит слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Count

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ считаСт, сколько Ρ€Π°Π· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ появляСтся Π² спискС Python:

Append

ДобавляСт ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½Π΅Ρ†:

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ список Π² ΠŸΠ°ΠΉΡ‚ΠΎΠ½Π΅. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΡ‚ мСньшСго ΠΊ Π±ΠΎΠ»ΡŒΡˆΠ΅ΠΌΡƒ:

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ элСмСнтов ΠΎΡ‚ большСго ΠΊ ΠΌΠ΅Π½ΡŒΡˆΠ΅ΠΌΡƒ:

Insert

ВставляСт элСмСнт ΠΏΠ΅Ρ€Π΅Π΄ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ индСксом:

Remove

УдаляСт ΠΏΠ΅Ρ€Π²ΠΎΠ΅ попавшССся Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ элСмСнта Π² спискС Python:

Extend

А Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ удаляСт элСмСнт Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ индСксС, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ элСмСнт. Если индСкс Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ послСдний элСмСнт:

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ список Π² строку. Π Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ элСмСнтов ΠΏΠΈΡˆΡƒΡ‚ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… ΠΏΠ΅Ρ€Π΅Π΄ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ, Π° сам список ΠŸΠΈΡ‚ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· строк:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Бписки (list). Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков

БСгодня я расскаТу ΠΎ Ρ‚Π°ΠΊΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ списки, опСрациях Π½Π°Π΄ Π½ΠΈΠΌΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ…, ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… списков ΠΈ ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ списков.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ списки?

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ списки, ΠΈΡ… Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ список ΠΌΠΎΠΆΠ½ΠΎ нСсколькими способами. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ любой ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, строку) встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ list:

Бписок ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°:

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, список ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ любоС количСство Π»ΡŽΠ±Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Π² Ρ‚ΠΎΠΌ числС ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ списки), ΠΈΠ»ΠΈ Π½Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТная конструкция Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° списков:

Но Π² слоТных случаях Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ for для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ списков.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ создали, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ со списком Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ. Для списков доступны основныС встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков.

Π’Π°Π±Π»ΠΈΡ†Π° «ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков»

ΠœΠ΅Ρ‚ΠΎΠ΄Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚
list.append(x)ДобавляСт элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ† списка
list.extend(L)Π Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ список list, добавляя Π² ΠΊΠΎΠ½Π΅Ρ† всС элСмСнты списка L
list.insert(i, x)ВставляСт Π½Π° i-Ρ‹ΠΉ элСмСнт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ x
list.remove(x)УдаляСт ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт Π² спискС, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ x. ValueError, Ссли Ρ‚Π°ΠΊΠΎΠ³ΠΎ элСмСнта Π½Π΅ сущСствуСт
list.pop([i])УдаляСт i-Ρ‹ΠΉ элСмСнт ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ. Если индСкс Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, удаляСтся послСдний элСмСнт
list.index(x, [start [, end]])Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ x (ΠΏΡ€ΠΈ этом поиск вСдСтся ΠΎΡ‚ start Π΄ΠΎ end)
list.count(x)Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство элСмСнтов со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ x
list.sort(Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ списки Π² python)Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ список Π½Π° основС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
list.reverse()Π Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ список
list.copy()ΠŸΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚Π½Π°Ρ копия списка
list.clear()ΠžΡ‡ΠΈΡ‰Π°Π΅Ρ‚ список

НуТно ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ строковых ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ сам список, Π° ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² эту ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ.

И, напослСдок, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками:

Π˜Π·Ρ€Π΅Π΄ΠΊΠ°, для увСличСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, списки Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΌΠ΅Π½Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ массивами (хотя Π² Ρ‚Π°ΠΊΠΈΡ… случаях ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ NumPy).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Бписки Π² Python: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Π·Π°Π΅Ρ…Π°Ρ‚ΡŒ Π·Π° ΠΏΠΎΠΊΡƒΠΏΠΊΠ°ΠΌΠΈ Π² блиТайший супСрмаркСт. Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π½Π°Ρ‡Π°Π»Π΅? Π’Π΅Ρ€Π½ΠΎ! Π‘ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ список ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ. А Π² Python Π΅ΡΡ‚ΡŒ структура Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‡Π΅Π½ΡŒ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰Π°Ρ Ρ‚Π°ΠΊΠΈΠ΅ списки. БобствСнно, ΠΎΠ½Π° Ρ‚Π°ΠΊ ΠΈ называСтся β€” список (Π°Π½Π³Π». list).

Π­Ρ‚ΠΎ ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎ списках Π² Python, прСдназначСнная для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ нСсколько ΠΌΠΈΠ½ΡƒΡ‚ ΠΌΡ‹ познакомимся со списками ΠΈ рассмотрим самыС распространСнныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π½ΠΈΠΌΠΈ: срСзы ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² списков.

Π˜Ρ‚Π°ΠΊ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ погрузимся Π² Ρ‚Π΅ΠΌΡƒ списков Π² Python, продолТая ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ со списками ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ.

Как Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ списки

Боставляя список ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ, ΠΌΡ‹ записываСм Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ Ρ‚ΠΎΠ²Π°Ρ€Ρ‹ Π² столбик. Π’ Ρ‚Π°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅ список Π»Π΅Π³ΠΊΠΎ ΡƒΠ·Π½Π°Π²Π°Π΅ΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ список ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ.

Π§Ρ‚ΠΎΠ±Ρ‹ Python понял, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π΅Π»ΠΎ со списком, Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ всС элСмСнты Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ( [] ). Π‘Π°ΠΌΠΈ элСмСнты ΠΏΡ€ΠΈ этом Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ запятыми.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания списка ΠΈΠ· 6 элСмСнтов (пускай это Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΠ²Π°Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΊΡƒΠΏΠΈΡ‚ΡŒ).

Π˜Π·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ списков Π² Python

ИмСя Π΄Π΅Π»ΠΎ со списком ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ, ΠΌΡ‹ свободно ΠΌΠΎΠΆΠ΅ΠΌ Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ. НапримСр, Π²Ρ‹Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ овсяноС ΠΏΠ΅Ρ‡Π΅Π½ΡŒΠ΅ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠ½Ρ„Π΅Ρ‚Ρ‹. Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ списки Π² Python. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, списки β€” измСняСмый Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ….

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ oatmeal cookies Π½Π° candy :

Π˜Π½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡ списков Π² Python

ΠŸΠΎΠΏΡ‹Ρ‚Π°Π²ΡˆΠΈΡΡŒ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ элСмСнту ΠΏΠΎ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ индСксу, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ β€” IndexError.

Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρƒ нас Π΅ΡΡ‚ΡŒ список ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ ΠΈΠ· 6 элСмСнтов (Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ индСксов 0-5). Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΊΠΎΠ΄Π΅ Π½ΠΈΠΆΠ΅, Ссли ΠΌΡ‹ попытаСмся ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ элСмСнту ΠΏΠΎΠ΄ индСксом 6, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ элСмСнта с Ρ‚Π°ΠΊΠΈΠΌ индСксом просто Π½Π΅Ρ‚.

Π’Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ список ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Ρ‚ΠΎΠ²Π°Ρ€Ρ‹ (Ρ„Ρ€ΡƒΠΊΡ‚Ρ‹, ΠΎΠ²ΠΎΡ‰ΠΈ, сладости ΠΈ Ρ‚. ΠΏ.), список Π² Python ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ элСмСнты любого Ρ‚ΠΈΠΏΠ°.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, список Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π² сСбС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ списки Π² качСствС элСмСнтов. Π­Ρ‚ΠΎ называСтся Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ, Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ списки β€” Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ списка ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ, содСрТащСго Π΄Π²Π° списка помСньшС:

Как ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ список Π² Ρ†ΠΈΠΊΠ»Π΅

Если Π±Ρ‹ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½Π΅ вывСсти элСмСнты списка, Π° Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· Π½ΠΈΡ…, Π»ΡƒΡ‡ΡˆΠ΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ range β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСксы, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ ΠΈΡ… Π² Ρ†ΠΈΠΊΠ»Π΅.

Как Π΄Π΅Π»Π°Ρ‚ΡŒ срСзы списков Π² Python

ΠžΠ±Ρ‰ΠΈΠΉ шаблон срСзов Ρ‚Π°ΠΊΠΎΠ²:

Π‘Ρ€Π΅Π· бСрСтся ΠΎΡ‚ индСкса START (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) ΠΈ Π΄ΠΎ индСкса STOP (Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π΅Π³ΠΎ), с шагом STEP. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² START, STOP, STEP ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡƒΡ‰Π΅Π½.

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° это Π² ΠΊΠΎΠ΄Π΅:

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со списками Π² Python

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ наш shopping_list содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строки, min() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, которая шла Π±Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠΉ, Ссли Π±Ρ‹ список Π±Ρ‹Π» упорядочСн Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС. max() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, которая шла Π±Ρ‹ послСднСй.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° это Π² ΠΊΠΎΠ΄Π΅:

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ списки, объСдиняя ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ β€” Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ списки ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков Π² Python

Помимо ΡƒΠΆΠ΅ Π½Π°Π·Π²Π°Π½Π½Ρ‹Ρ… встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Python ΠΈΠΌΠ΅Π΅Ρ‚ Π΅Ρ‰Π΅ ΠΈ нСсколько ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ΄ΡƒΠΌΠ°Π΅ΠΌ ΠΎ списках ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ. КакиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΡ‹ с Π½ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ΄Π΅Π»Ρ‹Π²Π°Π΅ΠΌ Ρ‡Π°Ρ‰Π΅ всСго?

Как Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ элСмСнты Π² список

Π§Ρ‚ΠΎ, Ссли Π±Ρ‹ ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² список элСмСнты ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ списка (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°)? ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ extend() ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ всС элСмСнты ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ + создаСт Π½ΠΎΠ²Ρ‹ΠΉ список, комбинируя списки, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² качСствС ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ². А ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ append() ΠΈ extend() ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ список, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ΠΈ Π²Ρ‹Π·Π²Π°Π½Ρ‹, ΠΈ Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Ρ… списков.

Как ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты ΠΈΠ· списка

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты ΠΈΠ· списка ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ.

Если Π±Ρ‹ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΏΠΎΠ΄ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ индСксом, этот индСкс ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ pop() Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°.

ΠŸΡ€ΠΈ этом ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ индСкс элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΈ срСз β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС элСмСнты Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΠ²Π°Ρ€ Π² спискС ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄ΡƒΠΌΠ°Π»ΠΈ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ, Π½ΠΎ Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊΠΎΠΉ Ρƒ Π½Π΅Π³ΠΎ индСкс. Π’ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… случаях ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ remove() ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅Ρ‚ Π² спискС, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ValueError.

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° списков Π² Python

Π˜Ρ‚ΠΎΠ³ΠΈ

Из этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Π²Ρ‹ ΡƒΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ списки, ΠΊΠ°ΠΊ Π±Ρ€Π°Ρ‚ΡŒ срСзы, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты ΠΈΠ· списков, Π° Ρ‚Π°ΠΊΠΆΠ΅ β€” ΠΊΠ°ΠΊ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ списки.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π Π°Π±ΠΎΡ‚Π° со списками (list) Π² Python

Π‘ ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ списка Π² Python ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ для хранСния Π² Π½ΠΈΡ… ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Бписки ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ всСх Ρ‚ΠΈΠΏΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ массива Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ языкС программирования. Π’Π°ΠΊΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ списка доступСн ΠΊ измСнСнию.

НиТС разбСрёмся, ΠΊΠ°ΠΊ устроСны списки, ΠΊΠ°ΠΊ с Π½ΠΈΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘ΠΌ 6 ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈΠ· ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ список

Бписок (list) β€” Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для хранСния Π½Π°Π±ΠΎΡ€Π° ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… элСмСнтов.

Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ со списком ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ для ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°: Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ вносятся элСмСнты, ΠΈΡ… Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Как списки хранятся Π² памяти?

Базовая C-структура списков Π² Python (CPython) выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Когда ΠΌΡ‹ создаём список, Π² памяти ΠΏΠΎΠ΄ Π½Π΅Π³ΠΎ рСзСрвируСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, состоящий ΠΈΠ· 3-Ρ… частСй:

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ списка Ρ…Ρ€Π°Π½ΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π° Π½Π΅ Π½Π° сами ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Python Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ элСмСнты списка Π² памяти, Π·Π°Ρ‚Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° эти элСмСнты. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, список Π² Python β€” это массив ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

Базовая Ρ€Π°Π±ΠΎΡ‚Π° со списками

ОбъявлСниС списка

ОбъявлСниС списка β€” самый ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈ Π³Π»Π°Π²Π½Ρ‹ΠΉ этап Π΅Π³ΠΎ создания. Для объявлСния списка Π² Python сущСствуСт нСсколько способов.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–1 : Π§Π΅Ρ€Π΅Π· Π»ΠΈΡ‚Π΅Ρ€Π°Π» (Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°ΡŽΡ‰Π΅Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚):

>>> elements = [1, 3, 5, 6] >>> type(elements) >>> print(elements) [1, 3, 5, 6]

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ β„–2 : Π§Π΅Ρ€Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ list() :

>>> elements = list() >>> type(elements) >>> print(elements) []

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ создаСтся пустой список.

ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ элСмСнту списка Π² Python

НСкоторыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, рассмотрСнныС Π²Ρ‹ΡˆΠ΅, ΠΈΠΌΠ΅ΡŽΡ‚ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта: Π»ΠΈΠ±ΠΎ Π²Ρ‹Π±ΠΎΡ€ нСпосрСдствСнно Π΅Π³ΠΎ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Π»ΠΈΠ±ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ индСксу. ИндСксом Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π΅Π³ΠΎ порядковый Π½ΠΎΠΌΠ΅Ρ€, начиная с нуля.

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ индСкс, рассмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

elements = [1, 2, 3, ‘word’]

НумСрация элСмСнтов списка Π² Python начиная с нуля

>>> elements[-4] 1 >>> elements[-1] ‘word’

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² список

Π’ списках доступно Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнтов. Рассмотрим ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ способ измСнСния элСмСнтов Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ….

>>> elements = [1, 2, 3, ‘word’] >>> elements.append(‘meow’) >>> print(elements) [1, 2, 3, ‘word’, ‘meow’]

Для простого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, рассмотрим созданиС списка с нуля с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° append() :

>>> elements = [] >>> elements.append(1) >>> elements.append(‘word’) >>> elements.append(‘meow’) >>> print(elements) [1, ‘word’, ‘meow’]

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² список Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ

>>> elements = [1, 2, 4] >>> print(elements) [1, 2, 4] >>> elements.insert(2, 3) >>> print(elements) [1, 2, 3, 4]

ИзмСнСниС элСмСнтов списка

ИзмСнСниС элСмСнтов списка происходит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ элСмСнт ΠΏΠΎ индСксу (порядковому Π½ΠΎΠΌΠ΅Ρ€Ρƒ элСмСнта) ΠΈ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

>>> elements = [2, 4, 6] >>> elements[2] = 8 >>> print(elements) [2, 4, 8]

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ ΠΌΡ‹ Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΈ 6 Π½Π° 8.

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ счёт начинаСтся с нуля, ΠΈ Π² Π΄Π°Π½Π½ΠΎΠΌ спискС Ρ†ΠΈΡ„Ρ€Π° 6 это 2-ΠΉ элСмСнт

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта ΠΈΠ· списка

>>> elements = [1, «test», 5, 7] >>> del elements[1] >>> print(elements) [1, 5, 7]

Π£Π΄Π°Π»ΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ списка, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… списков:

>>> my_list = [«hello», «world», «!»] >>> elements = [1, my_list, «ok»] >>> del elements[1][2] >>> print(elements) [1, [‘hello’, ‘world’], ‘ok’]

МоТно ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°ΠΌΠΈ:

>>> elements = [2, 4, 6, 8, 12] >>> del elements[2:] # удаляСм всС элСмСнты послС 2-Π³ΠΎ элСмСнта (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) >>> print(elements) [2, 4] >>> elements = [2, 4, 6, 8, 12] >>> del elements[:3] # удаляСм всС элСмСнты Π΄ΠΎ 3-Π³ΠΎ элСмСнта >>> print(elements) [8, 12] >>> elements = [2, 4, 6, 8, 12] >>> del elements[1:3] # удаляСм ΠΎΡ‚ 1-Π³ΠΎ элСмСнта Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎ 3-Π³ΠΎ элСмСнта >>> print(elements) [2, 8, 12]

>>> elements = [2, «test», 4] >>> elements.remove(«test») >>> print(elements) [2, 4]

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ элСмСнта Π² спискС

>>> elements = [‘слон’, ‘ΠΊΠΎΡ‚’, ‘лошадь’, ‘змСя’, ‘Ρ€Ρ‹Π±Π°’] >>> if ‘ΠΊΠΎΡ‚’ in elements: print(‘meow’) meow

ОбъСдинСниС списков

>>> a = [1, 3, 5] >>> b = [1, 2, 4, 6] >>> print(a + b) [1, 3, 5, 1, 2, 4, 6] >>> hello = [«h», «e», «l», «l», «o»] >>> world = [«w», «o», «r», «l», «d»] >>> hello.extend(world) # extends Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ список, Π° дополняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ >>> print(hello) [‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘w’, ‘o’, ‘r’, ‘l’, ‘d’]

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ списка Python

>>> a = [1, 2, 3] >>> b = a # ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ b присваиваСтся Π½Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ списка a, Π° Π΅Π³ΠΎ адрСс >>> print(id(a), id(b)) 56466376 56466376 # a ΠΈ b ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ список >>> b.append(4) >>> print(a, b) [1, 2, 3, 4] [1, 2, 3, 4]

Для копирования списков ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²:

Рассмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих способов:

>>> a = [«ΠΊΠΎΡ‚», «ΡΠ»ΠΎΠ½», «Π·ΠΌΠ΅Ρ»] >>> b = a.copy() >>> print(id(a), id(b), a, b) 56467336 56467016 [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] >>> d = list(a) >>> print(id(a), id(d), a, d) 56467336 60493768 [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] >>> import copy >>> e = copy.copy(a) # >>> print(id(a), id(e), a, e) 56467336 60491304 [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] >>> f = copy.deepcopy(a) >>> print(id(a), id(f), a, f) 56467336 56467400 [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] >>> c = a[:] # ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ синтаксис >>> print(id(a), id(c), a, c) 56467336 60458408 [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’] [‘ΠΊΠΎΡ‚’, ‘слон’, ‘змСя’]

Π’Π°ΠΆΠ½ΠΎ : copy.copy(a) Π΄Π΅Π»Π°Π΅Ρ‚ повСрхностноС ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ списка Π±ΡƒΠ΄ΡƒΡ‚ скопированы ΠΊΠ°ΠΊ ссылки Π½Π° Π½ΠΈΡ… (ΠΊΠ°ΠΊ Π² случаС с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ = ). Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ рСкурсивно ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всСх элСмСнтов Π² спискС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ copy.deepcopy(a)

Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ списка ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ срСзов. Π•ΡΡ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования:

>>> a = [«ΠΊΠΎΡ‚», «ΡΠ»ΠΎΠ½», «Π·ΠΌΠ΅Ρ»] >>> b = a[2:] # с 2-Π³ΠΎ элСмСнта (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° списка >>> print(b) [‘змСя’] >>> c = a[:2] # с Π½Π°Ρ‡Π°Π»Π° списка ΠΏΠΎ 2-ΠΉ элСмСнт >>> print(c) [‘ΠΊΠΎΡ‚’, ‘слон’] >>> d = a[1:2] # с 1-Π³ΠΎ элСмСнта (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) ΠΏΠΎ 2-ΠΉ элСмСнт >>> print(d) [‘слон’] >>> a = [1, 2, 3, 4, 5, 6, 7, 8] >>> e = a[0:8:2] # c 0-Π³ΠΎ элСмСнта ΠΏΠΎ 8-ΠΉ элСмСнт с шагом 2 >>> print(e) [1, 3, 5, 7]

Π¦ΠΈΠΊΠ» ΠΏΠΎ списку

elements = [1, 2, 3, «meow»] for el in elements: print(el)

elements = [1, 2, 3, «meow»] elements_len = len(elements) i = 0 while i

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²:

# append >>> a = [1, 2, 3] >>> a.append(4) print(a) [1, 2, 3, 4] # extend >>> elements = [1, 2, 3, «meow»] >>> elements.extend([4, 5, «gaf»]) >>> print(elements) [1, 2, 3, ‘meow’, 4, 5, ‘gaf’] # insert >>> a = [1, 3, 4] >>> a.insert(1, 2) >>> print(a) [1, 2, 3, 4] # remove >>> elements = [1, «meow», 3, «meow»] >>> elements.remove(«meow») >>> print(elements) [1, 3, ‘meow’] # remove удаляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ # clear >>> a = [1, 2, 3] >>> a.clear() >>> print(a) [] # copy >>> a = [1, 2, 3] >>> b = a.copy() >>> print(id(a), id(b), a, b) 60458408 60491880 [1, 2, 3] [1, 2, 3] # count >>> elements = [«one», «two», «three», «one», «two», «one»] >>> print(elements.count(«one»)) 3 # index >>> elements = [«one», «two», «three», «one», «two», «one»] >>> print(elements.index(«three»)) 2 # pop >>> elements = [1, «meow», 3, «meow»] >>> elements.pop(1) # удаляСм элСмСнт с индСксом 1 ‘meow’ # pop Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт списка >>> print(elements) [1, 3, ‘meow’] >>> elements.pop() # удаляСм ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт списка ‘meow’ >>> print(elements) [1, 3] >>> elements.pop(-1) # удаляСм послСдний элСмСнт списка 3 >>> print(elements) [1] # reverse >>> a = [1, 2, 3] >>> a.reverse() >>> print(a) [3, 2, 1] # sort (ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ) >>> elements = [3, 19, 0, 3, 102, 3, 1] >>> elements.sort() >>> print(elements) [0, 1, 3, 3, 3, 19, 102] # sort (ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ) >>> elements = [3, 19, 0, 3, 102, 3, 1] >>> elements.sort(reverse = True) >>> print(elements) [102, 19, 3, 3, 3, 1, 0]

Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ списки

Бписок ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²: числовыС, Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ списки. Бписок списков выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

>>> elements = [1, 2, [0.1, 0.2, 0.3]]

Для обращСния ΠΊ элСмСнту Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ списка Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π° индСкса: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° индСкс Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ списка, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” индСкс элСмСнта Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ спискС. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

>>> elements = [[«ΡΠ±Π»ΠΎΠΊΠΈ», 50], [«Π°ΠΏΠ΅Π»ΡŒΡΠΈΠ½Ρ‹», 190], [«Π³Ρ€ΡƒΡˆΠΈ», 100]] >>> print(elements[0]) [‘яблоки’, 50] >>> print(elements[1][0]) Π°ΠΏΠ΅Π»ΡŒΡΠΈΠ½Ρ‹

Π‘Ρ€Π΅Π·Ρ‹

Π‘Ρ€Π΅Π·Ρ‹ (slices) β€” это подмноТСства элСмСнтов списка. Π‘Ρ€Π΅Π·Ρƒ Π½ΡƒΠΆΠ½Ρ‹, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Ρ‡Π°ΡΡ‚ΡŒ списка ΠΈΠ· ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ списка.

Π£ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ свой собствСнный синтаксис. ЗаписываСтся срСз Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ элСмСнту, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ индСкс. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’ этом случаС бСрётся срСз ΠΎΡ‚ Π½ΠΎΠΌΠ΅Ρ€Π° start (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ stop (Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π΅Π³ΠΎ), Π° step β€” это шаг. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ start ΠΈ stop Ρ€Π°Π²Π½Ρ‹ 0, step Ρ€Π°Π²Π΅Π½ 1.

Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ списков

>>> c = [c * 3 for c in ‘list’] >>> print(c) [‘lll’, ‘iii’, ‘sss’, ‘ttt’]

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятыС ΡƒΡ‚Ρ€ΠΎΠ΅Π½Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ слова, Π²Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ. Π•ΡΡ‚ΡŒ мноТСство Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² примСнСния Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° списков.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° списка:

>>> nums = [i for i in range(1, 15)] >>> print(nums) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

Best Practices

ПослСдниС Π°Π±Π·Π°Ρ†Ρ‹ ΡΡ‚Π°Ρ‚ΡŒΠΈ Π±ΡƒΠ΄ΡƒΡ‚ посвящСны Π»ΡƒΡ‡ΡˆΠΈΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌ практичСских Π·Π°Π΄Π°Ρ‡, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Ρ‚Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ сталкиваСтся Python-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ.

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ порядок размСщСния элСмСнтов Π² спискС ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ функция list.reverse() :

>>> elements = [1, 2, 3, 4, 5, 6] >>> elements.reverse() >>> print(elements) [6, 5, 4, 3, 2, 1]

Как пСрСвСсти список Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚?

Иногда трСбуСтся пСрСвСсти список Π² строку, Π² ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ ΠΈΠ»ΠΈ Π² JSON. Для этого Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ вывСсти список Π±Π΅Π· скобок.

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ списка Π² строку осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ join(). На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ это выглядит Ρ‚Π°ΠΊ:

>>> fruits = [«ΡΠ±Π»ΠΎΠΊΠΎ», «Π³Ρ€ΡƒΡˆΠ°», «Π°Π½Π°Π½Π°Ρ»] >>> print(‘, ‘.join(fruits)) яблоко, Π³Ρ€ΡƒΡˆΠ°, ананас

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π² качСствС раздСлитСля ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ запятая.

>>> elements = [[‘1’, ‘a’],[‘2’, ‘b’],[‘3’, ‘c’]] >>> my_dict = dict(elements) >>> print(my_dict)

JSON β€” это JavaScript Object Notation. Π’ Python находится встроСнный ΠΌΠΎΠ΄ΡƒΠ»ΡŒ json для кодирования ΠΈ дСкодирования Π΄Π°Π½Π½Ρ‹Ρ… JSON. Π‘ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° json.dumps(x) ΠΌΠΎΠΆΠ½ΠΎ запросто ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ список Π² строку JSON.

>>> import json >>> json.dumps([‘word’, ‘eye’, ‘ear’]) ‘[«word», «eye», «ear»]’

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ индСкс элСмСнта Π² спискС?

>>> elements = [1, 3, 6, 9, 55] >>> print(elements.index(9)) 3

Π’ качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ индСкс.

Как ΠΏΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ количСство ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов Π² спискС?

Π‘Π°ΠΌΡ‹ΠΉ простой способ β€” ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ списка ΠΊ set (мноТСству). ПослС этого останутся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ посчитаСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ len() :

>>> words = [«one», «two», «one», «three», «one»] >>> len(set(words)) 3

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ список Π½Π° пустоту?

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ список числовых элСмСнтов с шагом

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ списка числовых элСмСнтов с шагом ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π½Π΅ Ρ‚Π°ΠΊ ΠΈ часто, Π½ΠΎ ΠΌΡ‹ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ построСния Ρ‚Π°ΠΊΠΎΠ³ΠΎ списка.

Π¨Π°Π³ΠΎΠΌ называСтся ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ. Если шаг ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Ρ‘Ρ‚ рСвСрс массива, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ отсчёт ΠΏΠΎΠΉΠ΄Ρ‘Ρ‚ справа Π½Π°Π»Π΅Π²ΠΎ. Π’ΠΎΡ‚ Ρ‚Π°ΠΊ выглядит список с шагом.

>>> elements = [1, 2, 3, 4, 5, 8, 9, 10, 11, 14, 20] >>> print(elements[0:11:2]) [1, 3, 5, 9, 11, 20]

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ списков:

>>> elements = [c for c in range(0, 10, 2)] # ΠΎΡ‚ 0 (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ 10 с шагом 2 >>> print(elements) [0, 2, 4, 6, 8]

ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° языкС Python, списки Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ довольно часто. Π—Π½Π°Π½ΠΈΠ΅ основ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ быстро ΠΈ качСствСнно ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ 😉.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками Python

Бписок Python β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ любого Ρ‚ΠΈΠΏΠ°: строки, числа, числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ смСшанного Ρ‚ΠΈΠΏΠ°. Π’ этом ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π΅ Ρ€Π΅Ρ‡ΡŒ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ ΠΎ функциях списков, ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΡ…, Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ элСмСнты, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ….

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ списки Python

Для создания списка Python Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ элСмСнты Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки:

Бписок ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

МоТно ΡΠΌΠ΅ΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ содСрТимого:

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ списки ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅.

ΠŸΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ элСмСнту списка ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π΅Π³ΠΎ индСкс. Π’ Python ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ систСма индСксации, начиная с нуля.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° строки.

ИзмСнСниС списка

Бписки β€” это измСняСмыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, поэтому ΠΈΡ… элСмСнты ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ, ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΈΡ… порядок.

Если Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ список:

Π’ΠΎ Π΅Π³ΠΎ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Если сСйчас вывСсти Π΅Π³ΠΎ Π½Π° экран, Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

Если индСкс β€” ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ число, Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ с послСднСго элСмСнта.

Π’Ρ‹Π²ΠΎΠ΄ этого ΠΊΠΎΠ΄Π° β€” β€˜ΠΏΡΡ‚ΡŒβ€™.

ΠŸΡ€ΠΎΡ…ΠΎΠ΄ (итСрация) ΠΏΠΎ списку

Π§ΠΈΡ‚Π°Ρ‚ΡŒ элСмСнты списка ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π°:

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ элСмСнты списка. А Π²ΠΎΡ‚ Ρ‡Ρ‚ΠΎ касаСтся ΠΈΡ… обновлСния:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

Ѐункция len() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° количСства элСмСнтов, Π° range() β€” списка индСксов.

Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ список β€” это всСгда ΠΎΠ΄ΠΈΠ½ элСмСнт Π²Π½Π΅ зависимости ΠΎΡ‚ количСства Π΅Π³ΠΎ элСмСнтов.

Π‘Ρ€Π΅Π· списка

МоТно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ срСз списка с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ( : ):

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΠ΄Π° Π²Ρ‹ΡˆΠ΅ β€” [‘Π΄Π²Π°’, ‘Ρ‚Ρ€ΠΈ’]

Если ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ число, ΠΎΡ‚ срСз Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта, Π° Ссли Π²Ρ‚ΠΎΡ€ΠΎΠ΅ β€” с послСднСго.

Если ΡƒΠ±Ρ€Π°Ρ‚ΡŒ числа ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅, Ρ‚ΠΎ скопируСтся вСсь список.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ этого Π³ΠΎΠ΄Π°:

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ списки измСняСмыС, ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° срСза:

Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² список

ΠœΠ΅Ρ‚ΠΎΠ΄ insert ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² список:

Π˜Π½Π΄Π΅ΠΊΡΡ‹ для вставляСмых элСмСнтов Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с нуля.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² список

ΠœΠ΅Ρ‚ΠΎΠ΄ append ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для добавлСния элСмСнта Π² список:

МоТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈ большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта Ρ‚Π°ΠΊΠΈΠΌ способом:

ΠŸΡ€ΠΈ этом list_2 Π½Π΅ помСняСтся.

ΠžΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ список

ΠŸΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ список

МоТно Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ порядок элСмСнтов Π² спискС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° reverse :

ИндСкс элСмСнта

ΠœΠ΅Ρ‚ΠΎΠ΄ index ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для получСния индСкса элСмСнта:

Если Π² спискС большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ элСмСнта, функция Π²Π΅Ρ€Π½Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ.

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΌΠΎΠΆΠ½ΠΎ, написав Π΅Π³ΠΎ индСкс Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ pop :

Если Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ индСкс, Ρ‚ΠΎ функция ΡƒΠ΄Π°Π»ΠΈΡ‚ послСдний элСмСнт.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ del ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ‚Π΅Ρ… ΠΆΠ΅ Ρ†Π΅Π»Π΅ΠΉ:

МоТно ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ нСсколько элСмСнтов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° срСза:

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ

Π’ Python Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°Π³Ρ€Π΅Π³Π°Ρ‚Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

sum() Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с числовыми значСниями.

Π‘Ρ€Π°Π²Π½ΠΈΡ‚ΡŒ списки

Π’ Python 2 ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ элСмСнты Π΄Π²ΡƒΡ… списком ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ cmp :

Π’ Python 3 для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ( == ):

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° списках:

Для объСдинСния списков ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ( + ):

Бписок ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° умноТСния:

Бписки ΠΈ строки

Для ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ строки Π² Π½Π°Π±ΠΎΡ€ символов, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ list :

Ѐункция list ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ строку Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ символы.

МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ split для разбития строки Π½Π° слова:

Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ список, Π³Π΄Π΅ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ словом ΠΌΠΎΠΆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· индСкс.

Π‘ΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ разбития ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ любой Π·Π½Π°ΠΊ, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ±Π΅Π».

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½:

ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ список Π² строку

ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ процСсс β€” объСдинСниС элСмСнтов списка Π² строку.

Π­Ρ‚ΠΎ дСлаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° join :

Алиасинг (псСвдонимы)

Когда Π΄Π²Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚:

Алиасинг Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ссылаСтся большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ измСняСмыС списки:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *