Π Π°Π·Π½ΠΎΠ΅

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Π² python: ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ (tuple) | Python 3 для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ (tuple) | Python 3 для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²

БСгодня я расскаТу ΠΎ Ρ‚Π°ΠΊΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ (tuple) ΠΈ ΠΎ Ρ‚ΠΎΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ.

ΠšΠΎΡ€Ρ‚Π΅ΠΆ, ΠΏΠΎ сути — нСизмСняСмый список.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, Ссли Π΅ΡΡ‚ΡŒ списки?

  • Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π΄ΡƒΡ€Π°ΠΊΠ°. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½ ΠΎΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Ρ… (Ρ‡Ρ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ), Ρ‚Π°ΠΊ ΠΈ случайных (Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ).
  • МСньший Ρ€Π°Π·ΠΌΠ΅Ρ€. Π”Π°Π±Ρ‹ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ голословным:
>>> a = (1, 2, 3, 4, 5, 6)
>>> b = [1, 2, 3, 4, 5, 6]
>>> a.__sizeof__()
36
>>> b.__sizeof__()
44
  • Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² качСствС ΠΊΠ»ΡŽΡ‡Π΅ΠΉ словаря:
>>> d = {(1, 1, 1) : 1}
>>> d
{(1, 1, 1): 1}
>>> d = {[1, 1, 1] : 1}
Traceback (most recent call last):
  File "", line 1, in
    d = {[1, 1, 1] : 1}
TypeError: unhashable type: 'list'

Как Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ?

Π‘ прСимущСствами ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ встаСт вопрос — Π° ΠΊΠ°ΠΊ с Π½ΠΈΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ со списками.

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ пустой ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

>>> a = tuple() # Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ tuple()
>>> a
()
>>> a = () # Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
>>> a
()
>>>

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта:

>>> a = ('s')
>>> a
's'

Π‘Ρ‚ΠΎΠΏ. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ строка. Но ΠΊΠ°ΠΊ ΠΆΠ΅ Ρ‚Π°ΠΊ? ΠœΡ‹ ΠΆΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Ρ…ΠΎΡ‚Π΅Π»ΠΈ! Как ΠΆΠ΅ Π½Π°ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ?

>>> a = ('s', )
>>> a
('s',)

Π£Ρ€Π°! Π—Π°Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ! ВсС Π΄Π΅Π»ΠΎ — Π² запятой. Π‘Π°ΠΌΠΈ ΠΏΠΎ сСбС скобки Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°Ρ‡Π°Ρ‚, Ρ‚ΠΎΡ‡Π½Π΅Π΅, Π·Π½Π°Ρ‡Π°Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ… находится ΠΎΠ΄Π½Π° инструкция, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π° ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ, пСрСносом строк ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠΌ мусором. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ Ρ‚Π°ΠΊ:

>>> a = 's',
>>> a
('s',)

Но всС ΠΆΠ΅ Π½Π΅ ΡƒΠ²Π»Π΅ΠΊΠ°ΠΉΡ‚Π΅ΡΡŒ, ΠΈ ΡΡ‚Π°Π²ΡŒΡ‚Π΅ скобки, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π²Π°ΡŽΡ‚ случаи, ΠΊΠΎΠ³Π΄Π° скобки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹.

Ну ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ всС Ρ‚ΠΎΠΉ ΠΆΠ΅ прСсловутой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ tuple()

>>> a = tuple('hello, world!')
>>> a
('h', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!')

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ

ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ списками, Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠ΅ список (слоТСниС, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° число, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ index() ΠΈ count() ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ). МоТно Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты мСстами ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

НапримСр, Π³ΠΎΡ€Π΄ΠΎΡΡ‚ΡŒ программистов Π½Π° python — ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…:

a, b = b, a

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ python для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ основныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с tuples

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

Π’ этом руководствС Π²Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ Python Π² подробностях:

  • Π£Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈΡ… ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ. Π£Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ нСизмСняСмый Ρ‚ΠΈΠΏ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…
  • Π Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ΡΡŒ, Ρ‡Π΅ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² Python ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ списков
  • ΠŸΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с опСрациями: срСзами, ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠ΅ΠΉ, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅
  • Π£Π²ΠΈΠ΄ΠΈΡ‚Π΅ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  • ΠΠ°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ сразу нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Python

Π­Ρ‚Π° структура Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ упорядочСнных ΠΈ нСизмСняСмых элСмСнтов.

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок (). Для создания Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

cake = ('c','a','k','e') 
print(type(cake))
<class 'tuple'>

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: type() β€” это встроСнная функция для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Π΅ значСния. Но послС объявлСния ΠΈΡ… ΡƒΠΆΠ΅ нСльзя Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ:

mixed_type = ('C',0,0,'K','I','E')

for i in mixed_type:
    print(i,":",type(i))
C : <class 'str'>
0 : <class 'int'>
0 : <class 'int'>
K : <class 'str'>
I : <class 'str'>
E : <class 'str'>

mixed_type[1] = "O"
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-16-dec28c299a95> in <module>()
----> 1 mixed_type[1] = 'O'  # ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ 0 Π½Π° Β«OΒ»


TypeError: 'tuple' object does not support item assignment

ПослСдняя ошибка появилась ΠΈΠ·-Π·Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

numbers_tuple = 1,2,3,4,5
print(type(numbers_tuple))
<class 'tuple'>

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ² списков

ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ ΠΊΠ°Π½Π°Π»Ρ‹

Как Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° списки. По сути, ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСизмСняСмыми списками. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ послС создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² Π½Π΅ΠΌ значСния нСльзя ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΌΠ΅Π½ΡΡ‚ΡŒ. Π”ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ‚Π°ΠΊΠΆΠ΅ нСльзя:

numbers_tuple = (1,2,3,4,5)
numbers_list = [1,2,3,4,5]


numbers_tuple.append(6)
---------------------------------------------------------------------------

AttributeError                            Traceback (most recent call last)

<ipython-input-26-e48876d745ce> in <module>()
      3 
      4 # Π”ΠΎΠ±Π°Π²ΠΈΠΌ число Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
----> 5 numbers_tuple.append(6)


AttributeError: 'tuple' object has no attribute 'append'

Ошибка появляСтся, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ нСльзя Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² случаС со списками.


numbers_list.append(6)
numbers_list.append(7)
numbers_list.append(8)


numbers_list.remove(7)
print(numbers_list)
[1, 2, 3, 4, 5, 6, 8]

Но Π·Π°Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Ссли ΠΎΠ½ нСизмСняСмый?

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ доступ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния ΠΊ элСмСнтам, Π½ΠΎ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ быстрСС списков. Рассмотрим Π² качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

>>> import timeit
>>> timeit.timeit('x=(1,2,3,4,5,6,7,8,9)', number=100000)
0.0018976779974764213
>>> timeit.timeit('x=[1,2,3,4,5,6,7,8,9]', number=100000)
0.019868606992531568

ΠšΠ°ΠΊΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ Π² случаС с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ?

Богласно ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Python нСизмСняСмый β€” это Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ с фиксированным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌΒ», Π½ΠΎ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Β«Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Β» β€” это чСрСсчур Ρ€Π°Π·ΠΌΡ‹Ρ‚Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½. Π›ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ id. id опрСдСляСт располоТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² памяти.

Рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅:


n_tuple = (1, 1, [3,4])


id(n_tuple[0]) == id(n_tuple[1])
True

id(n_tuple[0]) == id(n_tuple[2])
False
print(id(n_tuple[0]), id(n_tuple[2]))
4297148528, 4359711048
n_tuple.append(5)
---------------------------------------------------------------------------

AttributeError                            Traceback (most recent call last)

<ipython-input-40-3cd388e024ff> in <module>()
----> 1 n_tuple.append(5)


AttributeError: 'tuple' object has no attribute 'append'

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ нСльзя, поэтому появляСтся послСдняя ошибка AttributeError. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ эта структура Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Π°. Но всСгда ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

n_tuple[2].append(5)
n_tuple
(1, 1, [3, 4, 5])

Π­Ρ‚ΠΎ позволяСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ? ΠšΡƒΠ΄Π° Π² Ρ‚Π°ΠΊΠΎΠΌ случаС дСлась ΠΈΡ… Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ?

Π‘ΡƒΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ id списка Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ Π½Π΅ мСняСтся нСсмотря Π½Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ Π² Π½Π΅Π³ΠΎ элСмСнт 5.

id(n_tuple[2])
4359711048

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

НСкоторыС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСизмСняСмыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹: строки ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅) β€” нСизмСняСмыС, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ (содСрТащиС измСняСмыС Ρ‚ΠΈΠΏΡ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, списки) измСняСмыС. Но это ΠΎΡ‡Π΅Π½ΡŒ обсуТдаСмая Ρ‚Π΅ΠΌΠ° срСди программистов Π½Π° Python ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ ΠΊΠΎΠ΅-ΠΊΠ°ΠΊΠΈΠ΅ познания, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π΅Π΅. Π’ Ρ†Π΅Π»ΠΎΠΌ ΠΆΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ нСизмСняСмыС.

  • Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² Π½ΠΈΡ… Π½ΠΎΠ²Ρ‹Π΅ элСмСнты. Π£ этого Ρ‚ΠΈΠΏΠ° Π½Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² append() ΠΈΠ»ΠΈ extend()
  • Π£Π΄Π°Π»ΡΡ‚ΡŒ элСмСнты Ρ‚ΠΎΠΆΠ΅ нСльзя, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ·-Π·Π° нСизмСняСмости. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² remove() ΠΈ pop() здСсь Π½Π΅Ρ‚
  • Π˜ΡΠΊΠ°Ρ‚ΡŒ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ этот процСсс Π΅Π³ΠΎ Π½Π΅ мСняСт
  • Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ in для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ наличия элСмСнта Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅

Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ постоянный Π½Π°Π±ΠΎΡ€ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ вмСсто списка. Он Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстрСС. Плюс, это бСзопаснСС, вСдь Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Ρ‰ΠΈΡ‰Π΅Π½ ΠΎΡ‚ записи.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎ списках Python, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с этим руководством!

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ

Python прСдоставляСт нСсколько способов для управлСния ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ. Рассмотрим ΠΈΡ… Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ….

Π‘Ρ€Π΅Π·Ρ‹

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ β€” 0. По Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ со списками эти значСния ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ скобками [] для получСния доступа ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌ:

numbers = (0,1,2,3,4,5)
numbers[0]
0

МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния:

numbers[-1]
5

Π˜Π½Π΄Π΅ΠΊΡΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты, Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ срСзов становятся доступны ΠΈ подмноТСства. Для этого Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ индСксов:

[ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкст (Π²ΠΊΠ»ΡŽΡ‡Π΅Π½):ΠšΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСкс (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½):Частота]

Частота Π² Π΄Π°Π½Π½ΠΎΠΌ случаС являСтся ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, Π° Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ 1.

# Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ с индСксом 4 ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½
numbers[1:4]
(1, 2, 3)

numbers[:]
(0, 1, 2, 3, 4, 5)
# Частота = 2
numbers[::2]
(0, 2, 4)

Π‘ΠΎΠ²Π΅Ρ‚: Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ частоты ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

numbers[::-1]
(5, 4, 3, 2, 1, 0)

ОбъСдинСниС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

МоТно ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ объСдинСния выполняСт ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΡŽ Π΄Π²ΡƒΡ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ.

x = (1,2,3,4)
y = (5,6,7,8)


z = x + y 
print(z)
(1, 2, 3, 4, 5, 6, 7, 8)
y = [5,6,7,8]
z = x + y
print(z)
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-55-d442c6414a4c> in <module>()
      1 y = [5,6,7,8]
----> 2 z = x + y
      3 print(z)


TypeError: can only concatenate tuple (not "list") to tuple

Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊ, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈ список закончится ошибкой.

Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ умноТСния ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ повторяСтся нСсколько Ρ€Π°Π·.

x = (1,2,3,4)
z = x*2
print(z)
(1, 2, 3, 4, 1, 2, 3, 4)

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ списков Ρƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π½Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ append(), remove(), extend(), insert() ΠΈΠ»ΠΈ pop() ΠΎΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ ΠΈΠ·-Π·Π° ΠΈΡ… нСизмСняСмости. Но Π΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅:

count() ΠΈ len()

count() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ элСмСнта Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

a = [1,2,3,4,5,5]
a.count(5)
2

len() β€” Π΄Π»ΠΈΠ½Ρƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

a = (1,2,3,4,5)
print(len(a))
5

any()

Π€ΡƒΠ½ΠΊΡ†ΠΈΡŽ any() ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΈ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ. Если Π΄Π°, Ρ‚ΠΎ ΠΎΠ½Π° Π²Π΅Ρ€Π½Π΅Ρ‚ True.

a = (1,)
print(any(a))
True

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π·Π°ΠΏΡΡ‚ΡƒΡŽ (,) Π² объявлСнии ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° a. Если Π΅Π΅ Π½Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом? Python ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎ ошибкС Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ лишнюю ΠΏΠ°Ρ€Ρƒ скобок (это Π½ΠΈ Π½Π° Ρ‡Ρ‚ΠΎ Π½Π΅ влияСт), Π½ΠΎ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°ΠΊΠΎΠΌ случаС β€” это Π½Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Π°ΠΆΠ½ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°ΠΏΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΈ объявлСнии ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом.

И снова ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ any. Π’ Π±ΡƒΠ»Π΅Π²ΠΎΠΌ контСкстС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния. ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π²Π΅Ρ€Π½Π΅Ρ‚ False, Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом β€” True.

b = ()
print(any(b))
False

Ѐункция ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, Ссли ΠΊΠΎΡ€Ρ‚Π΅ΠΆ вызываСтся? ΠΈ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ пустой.

tuple()

Ѐункция tuple() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ. НапримСр, Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ список Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

a_list = [1,2,3,4,5]
b_tuple = tuple(a_list)
print(type(b_tuple))
<class 'tuple'>

min() ΠΈ max()

Ѐункция max()q Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ самый большой элСмСнт ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° min() β€” самый малСнький. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

print(max(a))
print(min(a))
5
A

Π­Ρ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ для ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ со строками.


a = ('Apple') 
print(max(a))
p

sum()

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ сумму элСмСнтов Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅. Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с числовыми значСниями.

sum(a)
28

sorted()

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с отсортированными элСмСнтами, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ sorted() ΠΊΠ°ΠΊ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

a = (6,7,4,2,1,5,3)
sorted(a)
[1, 2, 3, 4, 5, 6, 7]

Но Π²Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ Ρ‚ΠΈΠΏ β€” список, Π° Π½Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ. ΠŸΡ€ΠΈ этом ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Π°, Π° сам ΠΎΠ½ остаСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ.

ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ нСсколько ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для присваивания Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ. Π’ΠΎΡ‚ Ρ‚Π°ΠΊ:

a = (1,2,3)
(one,two,three) = a
print(one)
1

a β€” это ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… элСмСнтов ΠΈ (one, two, three) β€” ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Ρ‚Ρ€Π΅Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ (one, two, three) ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ a присваиваСт ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ a ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ: one, two ΠΈ three ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ. Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ количСству ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, ΠΊΠ°ΠΊ ΠΈΡ… ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ самыС распространСнныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΈ ΠΊΠ°ΠΊ ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ. Π’Π°ΠΊΠΆΠ΅ β€” распространСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ структур Python. А Π² качСствС бонуса Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ нСскольким ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ Ρ€Π°Π·Π½Ρ‹Π΅ значСния.

Python. Π£Ρ€ΠΎΠΊ 8. ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ (tuple)

Π”Π°Π½Π½Ρ‹ΠΉ ΡƒΡ€ΠΎΠΊ посвящСн ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌ (tuple) Π² Python. ОсновноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»Π΅Π½ΠΎ вопросу использования ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠ½ΠΎΠ³Π΄Π° Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΒ ΠΈΡ…, Π° Π½Π΅ списки, рассмотрСны способы создания ΠΈ основныС ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ. Π’Π°ΠΊΠΆΠ΅ Π·Π°Ρ‚Ρ€ΠΎΠ½Π΅ΠΌ Ρ‚Π΅ΠΌΡƒ прСобразования ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π² список ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (tuple) Π² Python?

ΠšΠΎΡ€Ρ‚Π΅ΠΆ (tuple) – это нСизмСняСмая структура Π΄Π°Π½Π½Ρ‹Ρ…, которая ΠΏΠΎ своСму подобию ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° список. Как Π²Ρ‹ Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅ Π·Π½Π°Π΅Ρ‚Π΅, Π° Ссли Π½Π΅Ρ‚, Ρ‚ΠΎ, поТалуйста, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с ΡΠ΅Π΄ΡŒΠΌΡ‹ΠΌ ΡƒΡ€ΠΎΠΊΠΎΠΌ, список – это измСняСмый Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…. Π’.Π΅. Ссли Ρƒ нас Π΅ΡΡ‚ΡŒ список a = [1, 2, 3] ΠΈ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт с 2 Π½Π° 15, Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ²ΡˆΠΈΡΡŒ ΠΊ элСмСнту списка.

>>> a = [1, 2, 3]
>>> print(a)
[1, 2, 3]
>>> a[1] = 15
>>> print(a)
[1, 15, 3]

Π‘Β ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‚.ΠΊ. элСмСнты Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ нСльзя.

>>> b = (1, 2, 3)
>>> print(b)
(1, 2, 3)
>>> b[1] = 15
Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    b[1] = 15
TypeError: 'tuple' object does not support item assignment

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² Python?

БущСствуСт нСсколько ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ вмСсто списков. Одна ΠΈΠ· Π½ΠΈΡ… – это ΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ случайного измСнСния. Если ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ массив Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ, Π½ΠΎ ΠΏΡ€ΠΈ этом нСпосрСдствСнно ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΡ‹ Π½Π΅ собираСмся, Ρ‚ΠΎΠ³Π΄Π°, это ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΠΎΡ‚ случай, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ придутся ΠΊΠ°ΠΊ нСльзя кстати. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈΡ… Π² Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅, ΠΌΡ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ сразу нСсколько бонусов – Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, это экономия мСста. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² памяти Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ мСньший объСм ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ со списками.

>>> lst = [10, 20, 30]
>>> tpl = (10, 20, 30)
>>> print(lst.__sizeof__())
32
>>> print(tpl.__sizeof__())
24

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ… – прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ связан с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ быстрСС, Ρ‡Π΅ΠΌ списки (Ρ‚.Π΅. Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° элСмСнтов ΠΈ Ρ‚.ΠΏ. Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ).Β Π’Π°ΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС ΠΊΠ»ΡŽΡ‡Π° Ρƒ словаря.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с Π΅Π³ΠΎ элСмСнтами

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

Для создания пустого ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄.

>>> a = ()
>>> print(type(a))
<class 'tuple'>
>>> b = tuple()
>>> print(type(b))
<class 'tuple'>

ΠšΠΎΡ€Ρ‚Π΅ΠΆ с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ содСрТаниСм создаСтся Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ список, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вмСсто ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅.

>>> a = (1, 2, 3, 4, 5)
>>> print(type(a))
<class 'tuple'>
>>> print(a)
(1, 2, 3, 4, 5)

ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ tuple().

>>> a = tuple((1, 2, 3, 4))
>>> print(a)
(1, 2, 3, 4)

Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° осущСствляСтся Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΊ элСмСнтам списка – Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ индСкса. Но, ΠΊΠ°ΠΊ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано – ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° нСльзя!

>>> a = (1, 2, 3, 4, 5)
>>> print(a[0])
1
>>> print(a[1:3])
(2, 3)
>>> a[1] = 3
Traceback (most recent call last):
  File "<pyshell#24>", line 1, in <module>
    a[1] = 3
TypeError: 'tuple' object does not support item assignment

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

>>> a = (1, 2, 3, 4, 5)
>>> del a[0]
Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    del a[0]
TypeError: 'tuple' object doesn't support item deletion

Но ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ.

>>> del a
>>> print(a)
Traceback (most recent call last):
  File "<pyshell#28>", line 1, in <module>
    print(a)
NameError: name 'a' is not defined

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π² список ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ

На Π±Π°Π·Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ список, Π²Π΅Ρ€Π½ΠΎ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅. Для прСвращСния списка Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ достаточно ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ tuple().

>>> lst = [1, 2, 3, 4, 5]
>>> print(type(lst))
<class 'list'>
>>> print(lst)
[1, 2, 3, 4, 5]
>>> tpl = tuple(lst)
>>> print(type(tpl))
<class 'tuple'>
>>> print(tpl)
(1, 2, 3, 4, 5)

ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ опСрация Ρ‚Π°ΠΊΠΆΠ΅ являСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ.

>>> tpl = (2, 4, 6, 8, 10)
>>> print(type(tpl))
<class 'tuple'>
>>> print(tpl)
(2, 4, 6, 8, 10)
>>> lst = list(tpl)
>>> print(type(lst))
<class 'list'>
>>> print(lst)
[2, 4, 6, 8, 10]

P.S.

Если Π²Π°ΠΌ интСрСсна Ρ‚Π΅ΠΌΠ° Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Pandas. На нашСм сайтС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π²Π²ΠΎΠ΄Π½Ρ‹Π΅ ΡƒΡ€ΠΎΠΊΠΈ ΠΏΠΎ этой Ρ‚Π΅ΠΌΠ΅. ВсС ΡƒΡ€ΠΎΠΊΠΈ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Pandas собраны Π² ΠΊΠ½ΠΈΠ³Π΅ β€œPandas. Π Π°Π±ΠΎΡ‚Π° с данными”.

<<< Python. Π£Ρ€ΠΎΠΊ 7. Π Π°Π±ΠΎΡ‚Π° со списками (list)Β  Β Python. Π£Ρ€ΠΎΠΊ 9. Π‘Π»ΠΎΠ²Π°Ρ€ΠΈ (dict)>>>

ΡƒΡ€ΠΎΠΊ ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ~ PythonRu

ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠΊ: Бписки (list)

ΠšΠΎΡ€Ρ‚Π΅ΠΆ β€” это упорядочСнная ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, нСизмСняСмая. Π’ Python ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")
print(thistuple)

Π’Ρ‹Π²ΠΎΠ΄:

('ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€', 'ΠΎΠ³ΡƒΡ€Π΅Ρ†', 'Π»ΡƒΠΊ')

Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ индСкса.
ВывСсти элСмСнт с индСксом 1:

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")
print(thistuple[1])

Π’Ρ‹Π²ΠΎΠ΄:

ΠΎΠ³ΡƒΡ€Π΅Ρ†

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт ΠΊΠΎΡ€Π΅ΠΆΠ°

ПослС создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Π½Π΅Π³ΠΎ. ΠšΠΎΡ€Ρ‚Π΅ΠΆ β€” нСизмСняСмый.

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")
thistuple[1] =  "ΠΌΠΎΡ€ΠΊΠΎΠ²ΠΊΠ°"  

Π’Ρ‹Π²ΠΎΠ΄:

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    thistuple[1] =  "ΠΌΠΎΡ€ΠΊΠΎΠ²ΠΊΠ°"
TypeError: 'tuple' object does not support item assignment

Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ†ΠΈΠΊΠ»Π° for.

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")
for x in thistuple:  
    print(x)

Π’Ρ‹Π²ΠΎΠ΄:

ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€
ΠΎΠ³ΡƒΡ€Π΅Ρ†
Π»ΡƒΠΊ
ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ ΠΊΠ°Π½Π°Π»Ρ‹

Π£Π·Π½Π°Ρ‚ΡŒ большС ΠΎ Ρ†ΠΈΠΊΠ»Π΅ for Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Python Ρ†ΠΈΠΊΠ» For.

Π”Π»ΠΈΠ½Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Для опрСдСлСния количСства элСмСнтов списка, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ len().
Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ количСство элСмСнтов Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅:

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")
print(len(thistuple))

Π’Ρ‹Π²ΠΎΠ΄:

3

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнтов

ПослС создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ элСмСнты. ΠšΠΎΡ€Ρ‚Π΅ΠΆ β€” нСизмСняСмый.

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")
thistuple[3] = "ΠΌΠΎΡ€ΠΊΠΎΠ²ΠΊΠ°"  

Π’Ρ‹Π²ΠΎΠ΄:

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    thistuple[3] =  "ΠΌΠΎΡ€ΠΊΠΎΠ²ΠΊΠ°"
TypeError: 'tuple' object does not support item assignment

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнтов

Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:
ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово del ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

thistuple = ("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ")  
del thistuple  
print(thistuple)  

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ tuple()

Π’Π°ΠΊ ΠΆΠ΅ конструктор tuple() ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

thistuple = tuple(("ΠΏΠΎΠΌΠΈΠ΄ΠΎΡ€",  "ΠΎΠ³ΡƒΡ€Π΅Ρ†",  "Π»ΡƒΠΊ"))  
print(thistuple)

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π’ Python Ρ‚Π°ΠΊ ΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π²Π° встроСнных ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅.

ΠœΠ΅Ρ‚ΠΎΠ΄Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
count()Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство Ρ€Π°Π·, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ элСмСнт встрСчаСтся Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅
index()Π˜Ρ‰Π΅Ρ‚ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ индСкс

Π”Π°Π»Π΅Π΅: ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° (set)

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ (tuple) Π² Python

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

 x = (1, 2, 3)
x[0]  # 1
x[1]  # 2
x[2]  # 3
x[3]  # IndexError: tuple index out of range

 

Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ числами начнСтся с послСднСго элСмСнта ΠΊΠ°ΠΊ -1:

 x[-1] # 3
x[-2] # 2
x[-3] # 1
x[-4] # IndexError: tuple index out of range

 

Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ряда элСмСнтов

 print(x[:-1])   # (1, 2)
print(x[-1:])   # (3,)
print(x[1:3])   # (2, 3) 

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹

Одним ΠΈΠ· основных ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ list s ΠΈ tuple с Π² Python являСтся Ρ‚ΠΎ , Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСизмСняСмыми, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, ΠΎΠ΄ΠΈΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты , ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ. НапримСр:

 >>> t = (1, 4, 9)
>>> t[0] = 2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

 

Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ .append ΠΈ .extend ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ , ΠΊΠ°ΠΊ list Π΄Π΅Π»Π°Π΅Ρ‚. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ += Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ ΠΎΠ½ измСняСт связываниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π° Π½Π΅ сам ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

 >>> t = (1, 2)
>>> q = t
>>> t += (3, 4)
>>> t
(1, 2, 3, 4)
>>> q
(1, 2)

 

Π‘ΡƒΠ΄ΡŒΡ‚Π΅ остороТны ΠΏΡ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ измСняСмых ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ lists , Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΎΡ‡Π΅Π½ΡŒ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ ΠΏΡ€ΠΈ ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ. НапримСр:

 >>> t = (1, 2, 3, [1, 2, 3])
(1, 2, 3, [1, 2, 3])
>>> t[3] += [4, 5]

 

Π‘ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ содСрТимоС списка Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅:

 TypeError: 'tuple' object does not support item assignment
>>> t
(1, 2, 3, [1, 2, 3, 4, 5])

 

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ += ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ Β«Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΒ» Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ — это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, создавая Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с Π½ΠΎΠ²Ρ‹ΠΌ элСмСнтом Π²Ρ‹ Β«Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌΒ» ΠΈ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ; старый ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, Π½ΠΎ Π·Π°ΠΌΠ΅Π½Π΅Π½!

Π­Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ прСобразования Π² список ΠΈ ΠΈΠ· списка, Π½ΠΎ это ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ процСсс, ΠΈ это плохая ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, особСнно Ссли Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ нСсколько Ρ€Π°Π·.

ΠšΠΎΡ€Ρ‚Π΅ΠΆ являСтся элСмСнтарным ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΠΌΡ‹ΠΌ ΠΈ ΡƒΡ€Π°Π²Π½ΠΎΠ²Π΅ΡˆΠ΅Π½Π½Ρ‹ΠΌ

 hash( (1, 2) )  # ok
hash( ([], {"hello"})  # not ok, since lists and sets are not hashabe

 

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ set ΠΈΠ»ΠΈ Π² качСствС ΠΊΠ»ΡŽΡ‡Π° Π² dict Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π° , ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π΅Π³ΠΎ элСмСнтов ΠΌΠΎΠΆΠ΅Ρ‚.

 { (1, 2) } #  ok
{ ([], {"hello"}) ) # not ok 

ΠšΠΎΡ€Ρ‚Π΅ΠΆ

БинтаксичСски, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ — это список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ:

 t = 'a', 'b', 'c', 'd', 'e'

 

Π₯отя это ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² скобки:

 t = ('a', 'b', 'c', 'd', 'e')

 

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ пустой ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΊΡ€ΡƒΠ³Π»Ρ‹ΠΌΠΈ скобками:

 t0 = ()
type(t0)            # <type 'tuple'>

 

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π·Π°ΠΏΡΡ‚ΡƒΡŽ:

 t1 = 'a',
type(t1)              # <type 'tuple'>

 

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² скобках Π½Π΅ являСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ:

 t2 = ('a')
type(t2)              # <type 'str'>

 

Для создания одноэлСмСнтного ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΡƒΡŽ Π·Π°ΠΏΡΡ‚ΡƒΡŽ.

 t2 = ('a',)
type(t2)              # <type 'tuple'>

 

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ , Ρ‡Ρ‚ΠΎ для одноэлСмСнтных ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ рСкомСндуСтся (см PEP8 Π½Π° Π·Π°Π΄Π½Π΅ΠΉ запятыС ) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ , Π½ΠΈ ΠΎΠ΄ΠΈΠ½ Π±Π΅Π»Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π» послС запятой Π²Π΅Π΄ΠΎΠΌΠΎΠΉ (см PEP8 Π½Π° ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½Ρ‹Ρ… символов )

 t2 = ('a',)           # PEP8-compliant
t2 = 'a',             # this notation is not recommended by PEP8
t2 = ('a', )          # this notation is not recommended by PEP8

 

Π”Ρ€ΡƒΠ³ΠΎΠΉ способ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ являСтся встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ tuple .

 t = tuple('lupins')
print(t)              # ('l', 'u', 'p', 'i', 'n', 's')
t = tuple(range(3))
print(t)              # (0, 1, 2)

 

Π­Ρ‚ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ основаны Π½Π° ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°Ρ… ΠΈΠ· ΠΊΠ½ΠΈΠ³ΠΈ Π”ΡƒΠΌΠ°ΠΉ Python АллСн B. Π”Π°ΡƒΠ½ΠΈ .

Π£ΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° ΠΈ распаковка ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

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

 a = 1, 2, 3   # a is the tuple (1, 2, 3)

 

Π° Ρ‚Π°ΠΊΠΆΠ΅

 a = (1, 2, 3) # a is the tuple (1, 2, 3)

 

эквивалСнтны. ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ a = 1, 2, 3 Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ , ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ значСния вмСстС Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΎΠ΄Π½ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ являСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ Python, Ρ‡Ρ‚ΠΎ пСрСмСнная являСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ, Π° Π½Π΅ СдинствСнным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°ΠΏΡΡ‚ΡƒΡŽ

 a = 1  # a is the value 1
a = 1, # a is the tuple (1,)

 

Запятая Π½ΡƒΠΆΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ скобки

 a = (1,) # a is the tuple (1,)
a = (1)  # a is the value 1 and not a tuple


 

Для распаковки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈ выполнСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅

 # unpacking AKA multiple assignment
x, y, z = (1, 2, 3) 
# x == 1
# y == 2
# z == 3

 

Π‘ΠΈΠΌΠ²ΠΎΠ» _ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Π² качСствС ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ использования ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ , Ссли Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, дСйствуя Π² качСствС заполнитСля:

 a = 1, 2, 3, 4
_, x, y, _ = a
# x == 2
# y == 3

 

ΠžΠ΄Π½ΠΎΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ:

 x, = 1,  # x is the value 1
x  = 1,  # x is the tuple (1,)


 

Π’ Python 3 Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с * прСфикс ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Π² качСствС Π²Π΄ΠΎΠ³ΠΎΠ½ΠΊΡƒ всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (см https://codecamp.ru/documentation/python/809/compatibility-between-python-3-and-python-2/2845 / распаковка-ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ):

ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ, * Π΅Ρ‰Π΅, послСдний = (1, 2, 3, 4, 5) # ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ == 1 # Π΅Ρ‰Π΅ == [2, 3, 4] # послСдний == 5

РСвСрсивныС элСмСнты

ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅

 colors = "red", "green", "blue"
rev = colors[::-1]
# rev: ("blue", "green", "red")
colors = rev
# colors: ("blue", "green", "red")

 

Или с использованиСм ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ (ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ Π΄Π°Π΅Ρ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ, которая прСобразуСтся Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ):

 rev = tuple(reversed(colors))
# rev: ("blue", "green", "red")
colors = rev
# colors: ("blue", "green", "red") 

ВстроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Если элСмСнты ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, python выполняСт сравнСниС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Если элСмСнты Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², ΠΎΠ½ провСряСт, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΈ ΠΎΠ½ΠΈ числами.

  • Если числа, ΠΏΡ€ΠΎΠ²Π΅Π΄ΠΈΡ‚Π΅ сравнСниС.
  • Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ· элСмСнтов являСтся числом, Ρ‚ΠΎ возвращаСтся Π΄Ρ€ΡƒΠ³ΠΎΠΉ элСмСнт.
  • Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Ρ‚ΠΈΠΏΡ‹ ΡΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Ρƒ.

Если ΠΌΡ‹ достигли ΠΊΠΎΠ½Ρ†Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· списков, Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ список Π±ΡƒΠ΄Π΅Ρ‚ «большС». Если ΠΎΠ±Π° списка ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹, возвращаСтся 0.

 tuple1 = ('a', 'b', 'c', 'd', 'e')
tuple2 = ('1','2','3')
tuple3 = ('a', 'b', 'c', 'd', 'e')

cmp(tuple1, tuple2)
Out: 1

cmp(tuple2, tuple1)
Out: -1

cmp(tuple1, tuple3)
Out: 0

 

Ѐункция len Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±Ρ‰ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

 len(tuple1)
Out: 5

 

Ѐункция max Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ элСмСнт ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ

 max(tuple1)
Out: 'e'

max(tuple2)
Out: '3'

 

Ѐункция min Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ элСмСнт ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ min

 min(tuple1)
Out: 'a'

min(tuple2)
Out: '1'

 

ВстроСнная функция tuple ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ список Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

 list = [1,2,3,4,5]
tuple(list)
Out: (1, 2, 3, 4, 5)

 

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ + для ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ Π΄Π²ΡƒΡ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

созданиС ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊ списку

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ Π½ΠΎΠ²Ρ‹Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. К Π½ΠΈΠΌ относится: созданиС списков, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ ΠΈΠ»ΠΈ словарСй. Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассмотрим, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ Π² Python 3.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ

ΠšΠΎΡ€Ρ‚Π΅ΠΆ – это нСизмСнная структура Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Ρ€Π°Π½Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Он ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° список, Π½ΠΎ послСдний ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ измСнСниям. Π’Π°ΠΊ, Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ элСмСнт списка, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это, Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΡƒΠΊΠ°Π·Π°Π²:

b = [4, 6, 8]
print(b)
[4, 6, 8]
b[1] = 13
print(b)
[4, 13, 8]

Если ΠΆΠ΅ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, Π½ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹ΠΉΠ΄Π΅Ρ‚, Π° Π½Π° экранС появится надпись ΠΎΠ± ошибкС. БчитаСтся, Ρ‡Ρ‚ΠΎ это Π²Π°ΠΆΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ случайно, Ρ‚Π°ΠΊ ΠΈ Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ. Π’Π°ΠΊΠΆΠ΅ Π² python Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠŸΡ€Π°Π²Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ привСсти Π΅Π³ΠΎ Π² список, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт. ПослС этого ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ список ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

Π’Ρ‹Π³ΠΎΠ΄Π½ΠΎΠ΅ прСимущСство ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° состоит Ρ‚Π°ΠΊΠΆΠ΅ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ мСньший Ρ€Π°Π·ΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎ провСряСтся ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ sizeof. Она ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² Π±Π°ΠΉΡ‚Π°Ρ…:

a = (2, 4, 6, 8, 10, 12)
b = [2, 4, 6, 8, 10, 12]
a.__sizeof__()
36
b.__sizeof__()
44

Из этого ΠΊΠΎΠ΄Π° Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках) Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 36 Π±Π°ΠΉΡ‚ΠΎΠ², Π° список (Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках) – 44 Π±Π°ΠΉΡ‚Π°.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅

ΠšΠΎΡ€Ρ‚Π΅ΠΆ опрСдСляСтся Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ список, ΠΎΠ΄Π½Π°ΠΊΠΎ пСрСчислСниС происходит Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ…, Π° Π½Π΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‚ΠΎΡΡ‚ΡŒ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ порядкС, Π° ΠΈΡ… нумСрация всСгда начинаСтся с нуля. А Ρ‚ΠΎΡ‡Π½Π΅Π΅ для нСпустого ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтом Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ ноль. ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ индСкс ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΎΡ‚ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ всС с ΠΊΠΎΠ½Ρ†Π° (с ΠΏΡ€Π°Π²ΠΎΠΉ стороны).

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания Π² Python ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

a = (1,2,3)

МоТно ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ список Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

a = tuple([1,2,3])

Рассмотрим ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ индСксом:

n = ("a", "b", "с", "d", "e")
print(n[-1])

'e'

Π’ΠΎ Π΅ΡΡ‚ΡŒ Π½Π° экранС отобразился ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π½Π΅ с Π½Π°Ρ‡Π°Π»Π°, Π° с ΠΊΠΎΠ½Ρ†Π° элСмСнт.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом, Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ запись:

a =(3,)
print(a[0])

3

НуТно ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ Ссли элСмСнт ΠΎΠ΄ΠΈΠ½, послС Π½Π΅Π³ΠΎ всС Ρ€Π°Π²Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΡ‚ΠΎΡΡ‚ΡŒ запятая.

Иногда для создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ΠΈ слуТат, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎ ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ элСмСнтов. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

a = tuple(i for i in range(0, 10))
print(a)

(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

Π’Ρ‹ΡˆΠ΅ прСдставлСн Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΡ‹ создали Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€. ПослС этого ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π»ΠΈ Π΅Π³ΠΎ ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова tuple.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ нСльзя ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ срСзы. Если потрСбуСтся – Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ привСсти Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ срСз.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ срСзах описано Π½ΠΈΠΆΠ΅ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ β€œΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ элСмСнту”.

ИспользованиС Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ списка.

ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ элСмСнту

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π΅ΡΡ‚ΡŒ свой индСкс. Π’ΠΎ Π΅ΡΡ‚ΡŒ, Π² Python для обращСния ΠΊ элСмСнту ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, Π½ΡƒΠΆΠ½ΠΎ просто ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π³ΠΎ индСкс. Напомним, Ρ‡Ρ‚ΠΎ счСт начинаСтся с нуля. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° ΠΊΠΎΠ΄:

b = (4, 6, 8)
print(b[0])
print(b[1])

4
6

Из ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΊΠ°ΠΊ элСмСнт, Ρ‚Π°ΠΊ ΠΈ срСз. Π’ этом случаС ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, состоящий ΠΈΠ· элСмСнтов, располоТСнных Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠ΅ срСза. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ срСза ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π½Π΅ Π½ΠΎΠΌΠ΅Ρ€Π° элСмСнтов, Π° Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. ΠŸΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтом находится ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ с индСксом 0. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

b = (5, 3.6, "ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚", 15, 'Π’')
print(b[1])
print(b[2:4])

3.6
('ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚', 15)

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² python ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°: index() ΠΈ count(). ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ примСняСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ индСкс Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта. НапримСр:

a = (32, 33, 34, 33, 34, 33)
print(a.index(33))

1

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ² Β«33Β» Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ нСсколько, Π½ΠΎ Π½Π° экран Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ….

ΠœΠ΅Ρ‚ΠΎΠ΄ count ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ссли Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ, сколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… элСмСнтов имССтся Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

a = (32, 33, 34, 33, 34, 33)
print(a.count(33))

3

На экранС ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ появится ΠΈΠΌΠ΅Π½Π½ΠΎ число 3, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ искомоС число 33 повторяСтся 3 Ρ€Π°Π·Π°.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°Ρ… Π½Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² добавлСния ΠΈ удалСния элСмСнтов.

Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ

Π”Π°Π½Π½Ρ‹ΠΉ класс Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ примСнСния срСди программистов, хотя ΠΎΠ½ ΠΈ являСтся достаточно Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ. Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² python (ΠΈΠ»ΠΈ namedtuple) Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ смыслС ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ…. Π’Π°ΠΊ, ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ считаСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ числовых индСксов. А Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли хочСтся для наглядности ΠΊΠΎΠ΄Π° ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ элСмСнтам, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ строковоС Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅. Π’Π°ΠΊΠΎΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°. Для этого Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ namedtuple.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ namedtuple, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ collections. Π­Ρ‚ΠΎ дСлаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ import collecions *. Π’ этом случаС ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ namedtuple Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: collections.namedtuple( [ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹] ). Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт, сохранСнный Π² ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅, доступСн Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΊΠΎΠ΄Π°:

from collections import namedtuple
Flower = namedtuple('Flower' , 'color cost comment')
rose = Flower('red', 5, 'beautiful')
print(rose.cost)

5

НаимСнования ΠΏΠΎΠ»Π΅ΠΉ Π±Ρ‹Π»ΠΈ пСрСчислСны Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π». ВмСсто этой строки ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список со строками. Π’ конструкторС namedtuple Ρ€Π°Π·ΠΎΠ±ΡŒΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ строку с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ split. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ элСмСнту cost. К ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ: rose.color, rose.comment.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π΄Π΅Π»Π°Π΅Ρ‚ Π²ΠΈΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ. Π’Π°ΠΊ, Π² Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ наимСнования color, cost ΠΈ comment. И ΠΏΡ€ΠΈ всСм ΠΏΡ€ΠΈ этом, сохраняСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ обращСния ΠΊ элСмСнтам ΠΏΠΎ индСксу, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ дописав ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌΡƒ ΠΊΠΎΠ΄Ρƒ:

print(rose[0])

red

Бписок ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

Иногда Π±Ρ‹Π²Π°ΡŽΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ (ΠΈΠ»ΠΈ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами). Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° array. К соТалСнию, Π½Π΅ получится с Π΅Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ массив ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ элСмСнтом массива Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

Из этой ситуации Π΅ΡΡ‚ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄ – созданиС Π² Python списка ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ объявлСния Ρ‚Π°ΠΊΠΎΠ³ΠΎ списка прСдставлСн Π½ΠΈΠΆΠ΅:

a = [(1,2,3),(4,5,6)]

CΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°

Иногда Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ элСмСнты списка. Благодаря встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ sorted, всС это дСлаСтся достаточно Π»Π΅Π³ΠΊΠΎ:

a = ('One', 'Two', 'Three')
a = tuple(sorted(a))
print(a)

('One', 'Three', 'Two')

Π’ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° сортировка ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Python ΠΏΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Ρƒ. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ сортировку ΠΌΠΎΠΆΠ½ΠΎ провСсти ΠΈ ΠΏΠΎ числовым элСмСнтом. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

a = (3, 1, 5 ,2, 6, 7)
a = tuple(sorted(a))
print(a)

(1, 2, 3, 5, 6, 7)

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° сортировка ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ функция sorted Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список, Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ tuple ΠΌΡ‹ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сортировки ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ.

Π’ список

ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Π°Ρ‚ΡŒ Π² список:

a = (1,2,3)
a = list(a)
print(a)

[1, 2, 3]

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π±Ρ‹Π» ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ Π² список Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ дСйствиС β€” ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ списка Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

a = [1, 2.6, "ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚"]
a = tuple(a)
print(a)

(1, 2.6, "ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚")

Π’ ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ

Π‘Π»ΠΎΠ²Π°Ρ€ΡŒ – это Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° структура ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ Π² Python. Он, ΠΊΠ°ΠΊ ΠΈ список, являСтся измСняСмым, Π½ΠΎ ΠΏΡ€ΠΈ этом нСупорядочСнным. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ элСмСнту посрСдством указания индСкса – Π½Π΅ получится. Π§Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ провСсти аналогию с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ Π°Π½Π³Π»ΠΎ-русским словарСм. Π’ Π½Π΅ΠΌ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ слова Π΅ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄: house –дом, flat – ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π°, window – ΠΎΠΊΠ½ΠΎ. Если пСрСнСсти Ρ‚Π°ΠΊΡƒΡŽ структуру Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, Ρ‚ΠΎ получится такая запись, оформляСмая Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹ΠΌΠΈ скобками:

{'house': 'Π΄ΠΎΠΌ', 'flat': 'ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π°', 'window': 'ΠΎΠΊΠ½ΠΎ'}

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ°Ρ€ ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ Π½Π° экран Π½Π΅ опрСдСляСтся Π½ΠΈΠΊΠ°ΠΊΠΈΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΎΠ½ΠΈ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ порядкС.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Python ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ dict.

a = (('a', 2),('b', 4))
a = dict(a)
print(a)

{'a': 2, 'b': 4}

Как Π²ΠΈΠ΄Π½ΠΎ, для создания словаря понадобился ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ состоят ΠΈΠ· Π΄Π²ΡƒΡ… элСмСнтов ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ. Π˜Π½Π°Ρ‡Π΅ Π½Π΅ получаСтся провСсти ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ ΡΠ»ΠΎΠ²Π°Ρ€ΡŽ.

Π’ строку

Π§Ρ‚ΠΎΠ±Ρ‹ вывСсти Π² python ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² ΠΎΠ΄Π½Ρƒ строку, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция join. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

a = ('one','two','three')
b = ''.join(a)
c = ','.join(a)
print(b)
print(c)

onetwothree
one,two,three

ПослС выполнСния ΠΊΠΎΠ΄Π° Π½Π° дисплСС появится запись всСх элСмСнтов Π² ΠΎΠ΄Π½Ρƒ строку с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС – Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ², Π° Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ случаС – Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ.

Π§Π΅ΠΌ ΠΆΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅? Π Π°Π±ΠΎΡ‚Π° с Π½ΠΈΠΌΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ быстрСС, Ρ‡Π΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, со списками. Если программисту Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ постоянный Π½Π°Π±ΠΎΡ€ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‚Π΅ΠΌ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ, Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это с Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ. Плюс – это экономия ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ мСньшС мСста, Ρ‡Π΅ΠΌ списки.

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ(tuple) Π² Python — всС Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ: список ΠΈ строки, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅

  • ΠšΠΎΡ€Ρ‚Π΅ΠΆ Python β€” нСизмСнная ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
  • ΠšΠΎΡ€Ρ‚Π΅ΠΆ создаСтся со значСниями, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ запятой.
  • ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π΅Π³ΠΎ элСмСнты.
  • Если элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСизмСняСмыми, ΠΈΡ… свойства ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Но ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.
  • ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ.
  • ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам Ρ‡Π΅Ρ€Π΅Π· ΠΈΡ… индСкс. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ для ссылки Π½Π° элСмСнты ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π° Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π°.
  • ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ элСмСнты Π² значСния, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ запятыми.
  • ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ для хранСния Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… элСмСнтов. Π£ Π½ΠΈΡ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ None.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π΄Π²Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°: + для объСдинСния ΠΈ * для повторСния элСмСнтов.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½Π°Ρ€Π΅Π·ΠΊΡƒ для создания Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈΠ· исходного.
  • ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Β«inΒ» ΠΈ Β«not inΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, присутствуСт Π»ΠΈ элСмСнт Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ ΠΈΠ»ΠΈ Π½Π΅Ρ‚.
  • ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ Π΅Π³ΠΎ элСмСнты с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ†ΠΈΠΊΠ»Π° for.
  • Класс ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Python ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ β€” count() ΠΈ index() .

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Python?

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, помСстив всС Π΅Π³ΠΎ элСмСнты Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ запятыми.

tuple_numbers = (1, 2, 3, 1)

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

tup = 1, 2, 3, 1, None, "Hello"

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

nested_tuple = ((1, 2), ("Hello", "Hi"), "Python")

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ пустой ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Π½Π΅ имСя Π½ΠΈΠΊΠ°ΠΊΠΈΡ… элСмСнтов Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок.

empty_tuple =()

ИспользованиС ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок для создания Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Однако Π»ΡƒΡ‡ΡˆΠ΅ всСго Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Если Π²Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, элСмСнты всСгда ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‚ΡΡ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках.

>>> tup = 1, 2, "Hello"
>>> print(tup)
(1, 2, 'Hello')
>>>

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТно. Если Π²Ρ‹ помСститС ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, ΠΎΠ½ΠΎ Π½Π΅ создаст Π΅Π³ΠΎ. Он создаст ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° значСния. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ это Π½Π° простом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅.

single_item_tuple = ("Hello")

print(type(single_item_tuple))

single_item_tuple = (10)

print(type(single_item_tuple))

Π’Ρ‹Π²ΠΎΠ΄:

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π·Π°ΠΏΡΡ‚ΡƒΡŽ послС значСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта.

single_item_tuple = "Hello",

print(type(single_item_tuple))

single_item_tuple = 10,

print(type(single_item_tuple))

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°?

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Ρ‡Π΅Ρ€Π΅Π· ΠΈΡ… индСкс. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса начинаСтся с 0 Π΄ΠΎ Π΄Π»ΠΈΠ½Ρ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° β€” 1.

tuple_numbers = (1, 2, 3, 4)

print(f'First element in tuple is {tuple_numbers[0]}')
print(f'Third element in tuple is {tuple_numbers[3]}')

Если Ρ€Π°Π·ΠΌΠ΅Ρ€ мСньшС ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ индСкса, выдаСтся Β«IndexError: индСкс ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Π½Π΅ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°Β».

>>> tuple_numbers = (1, 2, 3, 4)
>>> tuple_numbers[10]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: tuple index out of range
>>>

Tuple Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ. Π’ этом случаС элСмСнт извлСкаСтся ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π° Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π°. ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ индСкс начинаСтся с -1 Π΄ΠΎ β€” (Π΄Π»ΠΈΠ½Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°).

tuple_numbers = (1, 2, 3, 4)

print(f'Last element in tuple is {tuple_numbers[-1]}')
print(f'Second Last element in tuple is {tuple_numbers[-2]}')
print(f'First element in tuple is {tuple_numbers[-4]}')

Если Ρƒ нас Π΅ΡΡ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΅Π³ΠΎ элСмСнтам Ρ‡Π΅Ρ€Π΅Π· Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ индСксы.

>>> nested_tuple = (1, 2, (3, 4), (5, 6, 7))
>>> nested_tuple[2][0]
3
>>> nested_tuple[2][1]
4
>>> nested_tuple[3][0]
5
>>> nested_tuple[3][1]
6
>>> nested_tuple[3][2]
7
>>>

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы с Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ.

>>> nested_tuple = (1, 2, (3, 4), (5, 6, 7))
>>> 
>>> nested_tuple[-1][-1]
7
>>> nested_tuple[-2][1]
4
>>> nested_tuple[-2][-1]
4
>>> nested_tuple[3][-2]
6
>>> 

На ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ индСксы.

НарСзка

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Ρ€Π΅Π·ΠΊΡƒ для создания подмноТСства ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈΠ· исходного ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π’Π΅Ρ…Π½ΠΈΠΊΠ° Π½Π°Ρ€Π΅Π·ΠΊΠΈ содСрТит Π΄Π²Π° индСкса, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ΠΌ. Π›Π΅Π²Ρ‹ΠΉ индСкс Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, Π° ΠΏΡ€Π°Π²Ρ‹ΠΉ индСкс ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

tuple_numbers = (1, 2, 3, 4, 5, 6, 7, 8)

print(tuple_numbers[1:3])
print(tuple_numbers[:4])
print(tuple_numbers[5:])
print(tuple_numbers[:-5])

Π’Ρ‹Π²ΠΎΠ΄:

ΠΠ΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ ΠΏΠΎ своСй ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π΅Π³ΠΎ элСмСнты. Однако, Ссли элСмСнт являСтся измСняСмым, Π΅Π³ΠΎ свойства ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ.

>>> tup = (1,2)
>>> tup[0] = 10
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ элСмСнты ΡΠ²Π»ΡΡŽΡ‚ΡΡ измСняСмыми, ΠΈ ΠΌΡ‹ мСняСм ΠΈΡ… свойства.

list_fruits = ["Apple"]

tup = ("Hello", list_fruits)

print(tup)

list_fruits.append("Banana")

print(tup)

Π’Ρ‹Π²ΠΎΠ΄:

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅

ΠœΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты. Но ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ сам ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° del.

>>> tup = (1,2)
>>> print(tup)
(1, 2)
>>> del tup
>>> print(tup)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'tup' is not defined
>>>

ОбъСдинСниС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ (ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ +)

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° +.

>>> tuple1 = (1, 2)
>>> tuple2 = (3, 4)
>>> tuple3 = (5, 6, 7)
>>> 
>>> tuple_all = tuple1 + tuple2 + tuple3
>>> print(tuple_all)
(1, 2, 3, 4, 5, 6, 7)
>>> 

ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ элСмСнты (ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ *)

Tuple Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ * для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с элСмСнтами, ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠΌΠΈΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ количСство Ρ€Π°Π·.

>>> tup = (1, 2, (3, 4))
>>> 
>>> tup1 = tup * 3
>>> 
>>> print(tup1)
(1, 2, (3, 4), 1, 2, (3, 4), 1, 2, (3, 4))
>>> 

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Класс ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° выполняСт Π΄Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

  1. count (x): Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта.
  2. index (x, start, end): Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ индСкс значСния. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСксы для поиска значСния. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ, Ρ‚ΠΎ вызываСтся ValueError.
>>> tup = (1, 2, 3, 1, 2, 1, 3, 2, 1)
>>> 
>>> tup.count(1)
4
>>> tup.count(2)
3
>>> tup.index(2)
1
>>> tup.index(2, 2)
4
>>> tup.index(2, 2, 6)
4
>>> tup.index(20)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: tuple.index(x): x not in tuple
>>> 

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° содСрТит Π»ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ элСмСнт?

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, содСрТит Π»ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ элСмСнт, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Β«inΒ». Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Β«not inΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, отсутствуСт Π»ΠΈ элСмСнт Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

>>> vowels = ("a", "e", "i", "o", "u")
>>> 
>>> "a" in vowels
True
>>> "x" in vowels
False
>>> 
>>> "a" not in vowels
False
>>> "x" not in vowels
True

Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» for для ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° элСмСнтов.

vowels = ("a", "e", "i", "o", "u")

for v in vowels:
    print(v)

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ reversed().

for v in reversed(vowels):
    print(v)

ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ»ΠΈ список β€” сравнСниС

  • ΠšΠΎΡ€Ρ‚Π΅ΠΆ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, Π° список β€” ΠΈΠ·ΠΌΠ΅Π½Ρ‡ΠΈΠ².
  • ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ списка для хранСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ нСизмСняСм, итСрация ΠΏΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ выполняСтся Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ быстрСС, Ρ‡Π΅ΠΌ ΠΏΠΎ списку.
  • ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠΌΠ΅Π΅Ρ‚ большС памяти ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎ пространству, Ρ‡Π΅ΠΌ список.
  • Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнты ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ List.

ВстроСнная функция tuple()

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ tuple() для создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Он ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠΉΡΡ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ List ΠΈ String. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ.

1. Бписок

list_numbers = [1, 2, 3]

tuple_numbers = tuple(list_numbers)
print(tuple_numbers)  # (1, 2, 3)

2. Π‘Ρ‚Ρ€ΠΎΠΊΠ°

s = "ABCD"
tuple_str = tuple(s)
print(tuple_str)  # ('A', 'B', 'C', 'D')

3. Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½

r = range(1, 10)
tuple_range = tuple(r)
print(tuple_range)

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Python


ΠšΠΎΡ€Ρ‚Π΅ΠΆ

ΠšΠΎΡ€Ρ‚Π΅ΠΆ — это Π½Π°Π±ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ упорядочСн ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ . Π’ Python ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки.

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

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (thistuple)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, ΡƒΠΊΠ°Π·Π°Π² Π½ΠΎΠΌΠ΅Ρ€ индСкса Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π°
скобки:

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

ВывСсти Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (thistuple [1])

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ индСксированиС

ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ индСксация ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π°Ρ‡Π°Π»ΠΎ с ΠΊΠΎΠ½Ρ†Π°, -1 относится ΠΊ послСднСму элСмСнту,
-2 относится ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ послСднСму элСмСнту ΠΈ Ρ‚. Π”.

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

ВывСсти послСдний элСмСнт ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (thistuple [-1])

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ индСксов

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ индСксов, ΡƒΠΊΠ°Π·Π°Π², Π³Π΄Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈ Π³Π΄Π΅
ΠΊΠΎΠ½Π΅Ρ† Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°.

ΠŸΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ с
ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹.

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

Π’Π΅Ρ€Π½ΠΈΡ‚Π΅ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ, Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ ΠΈ пятый ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚:

thistuple = («яблоко», Β«Π±Π°Π½Π°Π½Β», «вишня», «апСльсин», Β«ΠΊΠΈΠ²ΠΈΒ», «дыня», Β«ΠΌΠ°Π½Π³ΠΎΒ»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (thistuple [2: 5])

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Поиск начнСтся с индСкса 2 (Π²ΠΊΠ»ΡŽΡ‡Π΅Π½) ΠΈ закончится с индСксом 5 (Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½).

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ индСкс 0.

Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… индСксов

Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ поиск с ΠΊΠΎΠ½Ρ†Π°
ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

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

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ элСмСнты ΠΎΡ‚ индСкса -4 (Π²ΠΊΠ»ΡŽΡ‡Π΅Π½) Π΄ΠΎ индСкса -1 (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½)

thistuple = («яблоко», Β«Π±Π°Π½Π°Π½Β», «вишня», «апСльсин», Β«ΠΊΠΈΠ²ΠΈΒ», «дыня», Β«ΠΌΠ°Π½Π³ΠΎΒ»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (число [-4: -1])

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »



Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ значСния ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

ПослС создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ значСния.ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹Π΅ ,
ΠΈΠ»ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΉ , ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π΅Ρ‰Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚.

Но Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡƒΡ‚ΡŒ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² список, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ²
list ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ список ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

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

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² список, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ:

x = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
y = список (x)
y [1] = «ΠΊΠΈΠ²ΠΈ»
x =
ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (y)

ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (x)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π¦ΠΈΠΊΠ» Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ€Ρ‚Π΅ΠΆ

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ†ΠΈΠΊΠ» для .

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

ΠŸΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ элСмСнты ΠΈ Ρ€Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ значСния:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
для x Π² этой Ρ‚Ρ€ΠΎΠΉΠΊΠ΅:
print (x)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ большС ΠΎ Ρ†ΠΈΠΊΠ»Π°Ρ… для Π² нашСй Π³Π»Π°Π²Π΅ Python For Loops.


ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, сущСствуСт Π»ΠΈ элСмСнт

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, присутствуСт Π»ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ элСмСнт Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово in :

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, присутствуСт Π»ΠΈ «ΡΠ±Π»ΠΎΠΊΠΎ» Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
Ссли «яблоко» Π² этой строкС:
print (Β«Π”Π°,Β« яблоко »находится Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ²Β»)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π”Π»ΠΈΠ½Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, сколько элСмСнтов Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ len () :

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

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ количСство элСмСнтов Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π»Π΅Π½ (Ρ‡Π΅Ρ€Ρ‚ΠΎΠΏΠΎΠ»ΠΎΡ…))

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ²Π°Ρ€Ρ‹

ПослС создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ элСмСнты.ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ нСизмСняСмыС .

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

Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
thistuple [3] = «orange» # Π­Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ
print (thistuple)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π·Π°ΠΏΡΡ‚ΡƒΡŽ послС элСмСнта,
ΠΈΠ½Π°Ρ‡Π΅ Python Π½Π΅ распознаСт Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

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

ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта, Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ Π·Π°ΠΏΡΡ‚ΡƒΡŽ:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ»,)
print (type (thistuple))

# НЕ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
thistuple = («apple»)
print (Ρ‚ΠΈΠΏ (thistuple))

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


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

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ нСизмСняСмыС , поэтому Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты
ΠΈΠ· Π½Π΅Π³ΠΎ, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

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

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово del ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ:

thistuple = («ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)
дСль
Ρ‡Π΅Ρ€Ρ‚ΠΎΠΏΠΎΠ»ΠΎΡ…
ΠΏΡ€ΠΈΠ½Ρ‚ (Ρ‡Π΅Ρ€Ρ‚ΠΎΠΏΠΎΠ»ΠΎΡ…)
# это Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ большС Π½Π΅ сущСствуСт

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ

Для объСдинСния Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ +
ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€:

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

Π‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

tuple1 = («a», «b», «c»)
tuple2 = (1, 2, 3)

tuple3 = tuple1 + tuple2
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (ΠΊΠΎΡ€Ρ‚Π΅ΠΆ3)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ tuple ()

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ конструктор tuple () для создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

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

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° tuple () для создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°:

thistuple = tuple ((«ΡΠ±Π»ΠΎΠΊΠΎ», «Π±Π°Π½Π°Π½», «Π²ΠΈΡˆΠ½Ρ»)) # ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (thistuple)

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


ΠšΠΎΡ€Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

Python ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° встроСнных ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ.

ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС
count () Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ встрСчаСтся Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅
index () Π˜Ρ‰Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ, Π³Π΄Π΅ ΠΎΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ


.

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Python (с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ)

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Π² Python ΠΏΠΎΡ…ΠΎΠΆ Π½Π° список. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° послС Π΅Π³ΠΎ назначСния, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты списка.


Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

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

ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ любоС количСство элСмСнтов, ΠΈ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (Ρ†Π΅Π»Ρ‹Π΅ числа, числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой, список, строка ΠΈ Ρ‚. Π”.)).

  # Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

# ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
my_tuple = ()
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)

# ΠšΠΎΡ€Ρ‚Π΅ΠΆ с Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами
my_tuple = (1, 2, 3)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)

# ΠΊΠΎΡ€Ρ‚Π΅ΠΆ со ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…
my_tuple = (1, Β«ΠŸΡ€ΠΈΠ²Π΅Ρ‚Β», 3.4)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)

# Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
my_tuple = ("ΠΌΡ‹ΡˆΡŒ", [8, 4, 6], (1, 2, 3))
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)  

Π’Ρ‹Ρ…ΠΎΠ΄

  ()
(1, 2, 3)
(1, 'ΠŸΡ€ΠΈΠ²Π΅Ρ‚', 3.4)
('ΠΌΡ‹ΡˆΡŒ', [8, 4, 6], (1, 2, 3))  

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±Π΅Π· использования ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок.Π­Ρ‚ΠΎ извСстно ΠΊΠ°ΠΊ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ.

  my_tuple = 3, 4.6, "собака"
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)

# Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° распаковка ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ
a, b, c = my_tuple

ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π°) # 3
print (b) # 4.6
print (c) # собака  

Π’Ρ‹Ρ…ΠΎΠ΄

  (3, 4.6, 'собака')
3
4.6
собака  

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТно.

Одного элСмСнта Π² скобках нСдостаточно. Нам понадобится конСчная запятая, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Π½Π° самом Π΄Π΅Π»Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

  my_tuple = ("ΠΏΡ€ΠΈΠ²Π΅Ρ‚")
print (type (my_tuple)) # <класс 'str'>

# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом
my_tuple = ("ΠΏΡ€ΠΈΠ²Π΅Ρ‚",)
print (type (my_tuple)) # <класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>

# Π‘ΠΊΠΎΠ±ΠΊΠΈ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹
my_tuple = "ΠΏΡ€ΠΈΠ²Π΅Ρ‚",
print (type (my_tuple)) #   

Π’Ρ‹Ρ…ΠΎΠ΄

  <класс 'str'>
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>  

Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы доступа ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

1. Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ индСкса [] для доступа ΠΊ элСмСнту Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅, Π³Π΄Π΅ индСкс начинаСтся с 0.

Π˜Ρ‚Π°ΠΊ, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, состоящий ΠΈΠ· 6 элСмСнтов, Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ индСксы ΠΎΡ‚ 0 Π΄ΠΎ 5. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ индСксу Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° индСкса ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° (6,7, … Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅) Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ IndexError .

ИндСкс Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌ числом, поэтому ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ float ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ TypeError .

Аналогичным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, доступ ΠΊ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌ осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ индСксации, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅.

  # Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ индСксации
my_tuple = ('p', 'e', ​​'r', 'm', 'i', 'Ρ‚')

print (my_tuple [0]) # 'p'
print (my_tuple [5]) # 'Ρ‚'

# IndexError: список индСкса Π²Π½Π΅ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°
# print (my_tuple [6])

# ИндСкс Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌ числом
# TypeError: индСксы списка Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами, Π° Π½Π΅ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой
# my_tuple [2.0]

# Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
n_tuple = ("ΠΌΡ‹ΡˆΡŒ", [8, 4, 6], (1, 2, 3))

# Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ индСкс
print (n_tuple [0] [3]) # 's'
print (число [1] [1]) # 4  

Π’Ρ‹Ρ…ΠΎΠ΄

  с.
Ρ‚
s
4  

2.ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ индСксированиС

Python допускаСт ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ своих ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ.

ИндСкс -1 относится ΠΊ послСднСму элСмСнту, -2 — ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ послСднСму элСмСнту ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

  # ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ индСксация для доступа ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
my_tuple = ('p', 'e', ​​'r', 'm', 'i', 'Ρ‚')

# Π’Ρ‹Π²ΠΎΠ΄: 't'
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple [-1])

# Π’Ρ‹Π²ΠΎΠ΄: 'p'
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple [-6])  

Π’Ρ‹Ρ…ΠΎΠ΄

  Ρ‚
ΠΏ  

3. НарСзка

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

  # Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°Ρ€Π΅Π·ΠΊΠΈ
my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

# элСмСнты со Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ
# Π’Ρ‹Π²ΠΎΠ΄: ('r', 'o', 'g')
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple [1: 4])

# элСмСнтов начиная со 2-Π³ΠΎ
# Π’Ρ‹Π²ΠΎΠ΄: ('p', 'r')
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple [: - 7])

# элСмСнты с 8-Π³ΠΎ ΠΏΠΎ ΠΊΠΎΠ½Π΅Ρ†
# Π’Ρ‹Π²ΠΎΠ΄: ('i', 'z')
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple [7:])

# элСмСнта ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
# Π’Ρ‹Π²ΠΎΠ΄: ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
print (my_tuple [:])  

Π’Ρ‹Ρ…ΠΎΠ΄

  ('Π³', 'ΠΎ', 'Π³')
('ΠΏ', 'Π³')
('я', 'я')
('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')  

НарСзку Π»ΡƒΡ‡ΡˆΠ΅ всСго Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, считая, Ρ‡Ρ‚ΠΎ индСкс находится ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.Π˜Ρ‚Π°ΠΊ, Ссли ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ, Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ индСкс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

НарСзка элСмСнтов Π² Python


ИзмСнСниС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ списков, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ нСизмСняСмы.

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

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ Ρ€Π°Π·Π½Ρ‹Π΅ значСния (ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).

  # ИзмСнСниС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
my_tuple = (4, 2, 3, [6, 5])


# TypeError: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ 'tuple' Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнтов
# my_tuple [1] = 9

# Однако, элСмСнт измСняСмого элСмСнта ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ
my_tuple [3] [0] = 9 # Π’Ρ‹Π²ΠΎΠ΄: (4, 2, 3, [9, 5])
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)

# ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ
my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

# Π’Ρ‹Π²ΠΎΠ΄: ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)  

Π’Ρ‹Ρ…ΠΎΠ΄

  (4, 2, 3, [9, 5])
('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')  

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ + для объСдинСния Π΄Π²ΡƒΡ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ.Π­Ρ‚ΠΎ называСтся ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠ΅ΠΉ .

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ элСмСнтов Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ количСство Ρ€Π°Π·, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ * .

ОбС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ + ΠΈ * приводят ΠΊ созданию Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

  # ΠšΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΡ
# Π’Ρ‹Π²ΠΎΠ΄: (1, 2, 3, 4, 5, 6)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ ((1, 2, 3) + (4, 5, 6))

# ΠŸΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅
# Π’Ρ‹Π²ΠΎΠ΄: ('Repeat', 'Repeat', 'Repeat')
print (("ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ",) * 3)  

Π’Ρ‹Ρ…ΠΎΠ΄

  (1, 2, 3, 4, 5, 6)
(Β«ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒΒ», Β«ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒΒ», Β«ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒΒ»)  

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Как ΠΎΠ±ΡΡƒΠΆΠ΄Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

Однако ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова del.

  # Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ
my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

# Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнты
# TypeError: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ 'tuple' Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта
# del my_tuple [3]

# МоТно ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ вСсь ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
дСль my_tuple

# NameError: имя my_tuple Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_tuple)  

Π’Ρ‹Ρ…ΠΎΠ΄

  Traceback (послСдний звонок послСдний):
  Π€Π°ΠΉΠ» Β«<строка>Β», строка 12, Π² <ΠΌΠΎΠ΄ΡƒΠ»Π΅>
NameError: имя my_tuple Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ  

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ добавлСния ΠΈΠ»ΠΈ удалСния элСмСнтов нСдоступны для ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.Доступны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.

НСкоторыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Python:

  my_tuple = ('Π°', 'Ρ€', 'Ρ€', 'Π»', 'Π΅',)

print (my_tuple.count ('p')) # Π’Ρ‹Π²ΠΎΠ΄: 2
print (my_tuple.index ('l')) # Π’Ρ‹Π²ΠΎΠ΄: 3  

Π’Ρ‹Ρ…ΠΎΠ΄

  2
3  

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ

1. ВСст Π½Π° члСнство Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, сущСствуСт Π»ΠΈ элСмСнт Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ ΠΈΠ»ΠΈ Π½Π΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Π² .

  # ВСст Π½Π° члСнство Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅
my_tuple = ('Π°', 'Ρ€', 'Ρ€', 'Π»', 'Π΅',)

# Π’ дСйствии
print ('a' Π² my_tuple)
print ('b' Π² my_tuple)

# НС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚
print ('g' отсутствуСт Π² my_tuple)  

Π’Ρ‹Ρ…ΠΎΠ΄

  Π’Π΅Ρ€Π½ΠΎ
Π›ΠΎΠΆΡŒ
ΠŸΡ€Π°Π²Π΄Π°  

2. Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» для для ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

  # ИспользованиС Ρ†ΠΈΠΊΠ»Π° for для ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
для ΠΈΠΌΠ΅Π½ΠΈ Π² ('Π”ΠΆΠΎΠ½', 'ΠšΠ΅ΠΉΡ‚'):
    print (Β«ΠŸΡ€ΠΈΠ²Π΅Ρ‚Β», имя)  

Π’Ρ‹Ρ…ΠΎΠ΄

  ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π”ΠΆΠΎΠ½
ΠŸΡ€ΠΈΠ²Π΅Ρ‚ ΠšΠ΅ΠΉΡ‚  

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π½Π°Π΄ списком

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° списки, ΠΎΠ±Π° ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Ρ… ситуациях.Однако Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ прСимущСства Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π½Π°Π΄ списком. НиТС пСрСчислСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основных прСимущСств:

  • ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ для Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… (Ρ€Π°Π·Π½Ρ‹Ρ…) Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ списки для ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… (ΠΏΠΎΡ…ΠΎΠΆΠΈΡ…) Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….
  • ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ нСизмСняСмы, итСрация ΠΏΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ выполняСтся быстрСС, Ρ‡Π΅ΠΌ со списком. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ нСбольшой прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ, содСрТащиС нСизмСняСмыС элСмСнты, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС ΠΊΠ»ΡŽΡ‡Π° для словаря. Π‘ΠΎ списками это Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
  • Если Ρƒ вас Π΅ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ, рСализация ΠΈΡ… Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ останутся Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ записи.

.

Python Tuple с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ

Π’ Python ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° List, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ нСизмСняСмы, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнты ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнты списка.

1. ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΡ€ΠΎΡ‚ΠΈΠ² списка

1. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ списка ΡΠ²Π»ΡΡŽΡ‚ΡΡ измСняСмыми, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° нСизмСняСмы.
2. Когда ΠΌΡ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… являСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆ , Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ, Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ список .
3. ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ элСмСнтов ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° выполняСтся быстрСС, Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ списка .
4. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ элСмСнты списка Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки.

2. Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Python

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

2.1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ — созданиС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм нСсколько ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ. Π£ нас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, Π° Ρ‚Π°ΠΊΠΆΠ΅ элСмСнты Π΄Π°Π½Π½Ρ‹Ρ… смСшанного Ρ‚ΠΈΠΏΠ°. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΊΠ°ΠΊ элСмСнты Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅).

 # ΠΊΠΎΡ€Ρ‚Π΅ΠΆ строк
my_data = (Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΠΎΠΊΠ°Β»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· числа int, float, string
my_data2 = (1, 2.8, Β«ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€Β»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data2)

# ΠΊΠΎΡ€Ρ‚Π΅ΠΆ строки ΠΈ списка
my_data3 = ("Книга", [1, 2, 3])
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data3)

# ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
# Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
my_data4 = ((2, 3, 4), (1, 2, "ΠΏΡ€ΠΈΠ²Π΅Ρ‚"))
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data4) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 (Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΠΎΠΊΠ°Β»)
(1, 2.8, 'Hello World')
('Книга', [1, 2, 3])
((2, 3, 4), (1, 2, 'ΠΏΡ€ΠΈΠ²Π΅Ρ‚')) 

2.2 ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:

 # пустой ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
my_data = () 

2.3 ΠšΠΎΡ€Ρ‚Π΅ΠΆ с СдинствСнным элСмСнтом:

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Когда ΠΊΠΎΡ€Ρ‚Π΅ΠΆ содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ элСмСнт, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π·Π°ΠΏΡΡ‚ΡƒΡŽ послС элСмСнта, ΠΈΠ½Π°Ρ‡Π΅ Python Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

 # ΠΊΠΎΡ€Ρ‚Π΅ΠΆ с ΠΎΠ΄Π½ΠΈΠΌ элСмСнтом Π΄Π°Π½Π½Ρ‹Ρ…
my_data = (99,) 

Если ΠΌΡ‹ Π½Π΅ поставим Π·Π°ΠΏΡΡ‚ΡƒΡŽ послС 99 Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Ρ‚ΠΎΠ³Π΄Π° python Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ my_data ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚ΠΈΠΏΠ° int, Π° Π½Π΅ ΠΊΠ°ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

3. Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ индСксы для доступа ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

3.1 Доступ ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с использованиСм ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… индСксов

Π£ нас Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅, ΠΌΡ‹ обсудили это Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅. Π˜Π½Π΄Π΅ΠΊΡΡ‹ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с 0, поэтому ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ 0 для доступа ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ элСмСнту ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, 1 для доступа ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ элСмСнту ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

 # ΠΊΠΎΡ€Ρ‚Π΅ΠΆ строк
my_data = (Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΠΎΠΊΠ°Β»)

# ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ всСх элСмСнтов
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# доступ ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ элСмСнту
# ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ "ΠΏΡ€ΠΈΠ²Π΅Ρ‚"
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [0])

# доступ ΠΊ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌΡƒ элСмСнту
# Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ "ΠΏΠΎΠΊΠ°"
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [2]) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 (Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β», Β«ΠΏΠΎΠΊΠ°Β»)
Здравствуй
до свидания 

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:
1. TypeError : Если Π²Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ цСлочислСнныС индСксы Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅. НапримСр, my_data [2.0] Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ эту ΠΎΡˆΠΈΠ±ΠΊΡƒ. ИндСкс всСгда Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌ числом.
2. IndexError : ИндСкс Π²Π½Π΅ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. Π­Ρ‚Π° ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ индСкс, Π½Π΅ входящий Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½. НапримСр, Ссли Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ 5 элСмСнтов, ΠΈ ΠΌΡ‹ пытаСмся ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ 7-ΠΌΡƒ элСмСнту, Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ эта ошибка.

3.2 ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°Ρ…

Подобно списку ΠΈ строкам, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы для доступа ΠΊ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΊΠΎΠ½Ρ†Π°.
-1 для доступа ΠΊ послСднСму элСмСнту, -2 для доступа ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ послСднСму ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

 my_data = (1, 2, «КСвин», 8.9)

# доступ ΠΊ послСднСму элСмСнту
# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² 8,9
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [-1])

# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² 2
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [-3]) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 8,9
2 

3.3 Доступ ΠΊ элСмСнтам ΠΈΠ· Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

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

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, ΠΊΠΎΠ³Π΄Π° я использовал my_data [2] [1], ΠΎΠ½ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» доступ ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ элСмСнту Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ 2 прСдставляСт Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт основного ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ, Π° 1 прСдставляСт Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт этого ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

 my_data = (1, Β«Π‘Ρ‚ΠΈΠ²Β», (11, 22, 33))

# Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 'v'
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [1] [3])

# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² 22
print (my_data [2] [1]) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 Π²
22 

4. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ Π² Python

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ Π² Python.

4.1 ИзмСнСниС элСмСнтов ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

ΠœΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° нСизмСняСмы. Однако ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ измСняСмыС элСмСнты Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… элСмСнтов. НапримСр, Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ‹ измСняСм элСмСнт списка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ присутствуСт Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ списка ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ, поэтому это Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ.

 my_data = (1, [9, 8, 7], Β«ΠœΠΈΡ€Β»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ элСмСнта списка
# это Π²Π΅Ρ€Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ список измСняСмый
my_data [1] [2] = 99
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ элСмСнта ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
# Π­Ρ‚ΠΎ нСдопустимо, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° нСизмСняСмы
# TypeError: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ 'tuple' Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнтов
# my_data [0] = 101
# print (my_data) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 (1, [9, 8, 7], "ΠΌΠΈΡ€")
(1, [9, 8, 99], Β«ΠœΠΈΡ€Β») 

4.2 ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ удалСния ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

ΠœΡ‹ ΡƒΠΆΠ΅ обсуТдали Π²Ρ‹ΡˆΠ΅, Ρ‡Ρ‚ΠΎ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° нСизмСняСмы, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Однако Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ всСго ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

 my_data = (1, 2, 3, 4, 5, 6)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ
# ошибка
# del my_data [2]

# Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ всСго ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
дСль my_data

# Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ
# ошибка
# ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ my_data ΡƒΠ΄Π°Π»Π΅Π½Π°
# print (my_data) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 (1, 2, 3, 4, 5, 6) 

4.3 ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Π½Π°Ρ€Π΅Π·ΠΊΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

 my_data = (11, 22, 33, 44, 55, 66, 77, 88, 99)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# элСмСнты с 3-Π³ΠΎ ΠΏΠΎ 5-ΠΉ
# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² (33, 44, 55)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [2: 5])

# элСмСнтов ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠ³ΠΎ
# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΈ (11, 22, 33, 44)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [: 4])

# элСмСнт с 5-Π³ΠΎ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² (55, 66, 77, 88, 99)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [4:])

# элСмСнт с 5-Π³ΠΎ ΠΏΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ послСдний
# ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΈ (55, 66, 77, 88)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data [4: -1])

# ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ всСго ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
print (my_data [:]) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 (11, 22, 33, 44, 55, 66, 77, 88, 99)
(33, 44, 55)
(11, 22, 33, 44)
(55, 66, 77, 88, 99)
(55, 66, 77, 88)
(11, 22, 33, 44, 55, 66, 77, 88, 99) 

4.4 ВСст Π½Π° члСнство Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°Ρ…

ΠΈΠ· : провСряСт, сущСствуСт Π»ΠΈ элСмСнт Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.
Π½Π΅ Π² : провСряСт, Π½Π΅ сущСствуСт Π»ΠΈ элСмСнт Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

 my_data = (11, 22, 33, 44, 55, 66, 77, 88, 99)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (my_data)

# ΠΏΡ€Π°Π²Π΄Π°
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (22 Π² my_data)

# Π»ΠΎΠΆΠ½Ρ‹ΠΉ
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (2 Π² my_data)

# Π»ΠΎΠΆΠ½Ρ‹ΠΉ
print (88 Π½Π΅Ρ‚ Π² my_data)

# ΠΏΡ€Π°Π²Π΄Π°
print (101 Π½Π΅Ρ‚ Π² my_data) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 (11, 22, 33, 44, 55, 66, 77, 88, 99)
ΠŸΡ€Π°Π²Π΄Π°
Π›ΠΎΠΆΡŒ
Π›ΠΎΠΆΡŒ
ΠŸΡ€Π°Π²Π΄Π° 

4.5 Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

 # ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ²
my_tuple = (Β«Π―Π±Π»ΠΎΠΊΠΎΒ», «АпСльсин», Β«Π’ΠΈΠ½ΠΎΠ³Ρ€Π°Π΄Β», Β«Π‘Π°Π½Π°Π½Β»)

# ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ элСмСнтов ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
для Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ² Π² my_tuple:
     ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ„Ρ€ΡƒΠΊΡ‚Ρ‹) 

Π’Ρ‹Ρ…ΠΎΠ΄:

 Π―Π±Π»ΠΎΠΊΠΎ
ΠΎΡ€Π°Π½ΠΆΠ΅Π²Ρ‹ΠΉ
Π’ΠΈΠ½ΠΎΠ³Ρ€Π°Π΄
Π‘Π°Π½Π°Π½ 

.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Python, объяснСнная Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…

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

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Python — пошаговоС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Python?

ΠšΠΎΡ€Ρ‚Π΅ΠΆ Python — это структура Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, которая Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Π° ΠΏΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ ΠΈ содСрТит ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… элСмСнтов.Он Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΊ список Python , Π½ΠΎ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ отличиями.

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

ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ программистам Π² Ρ€Π°Π·Π½Ρ‹Ρ… ситуациях. ΠœΡ‹ обсудим ΠΈΡ… ΠΏΠΎΠ·ΠΆΠ΅ Π² этом руководствС.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Python

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ экзСмпляр ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π² Python?

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π΄Π°ΠΆΠ΅ Π±Π΅Π· скобок. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ допустимыС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Python Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ чисСл , строк , списков ΠΈ Ρ‚. Π”.

ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π²Ρ…ΠΎΠ΄Π°ΠΌΠΈ
 # создаСм пустой ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
py_tuple = ()
print ("ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:", py_tuple)

# создаСм ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π±Π΅Π· ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок
py_tuple = 33, 55, 77
print ("Набор ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π±Π΅Π· скобок:", py_tuple, "type:", type (py_tuple))

# создаСм ΠΊΠΎΡ€Ρ‚Π΅ΠΆ чисСл
py_tuple = (33, 55, 77)
print ("Набор чисСл:", py_tuple)

# создаСм ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… чисСл
# Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ integer, float, ΠΌΠ½ΠΈΠΌΡ‹ΠΉ
py_tuple = (33, 3.3, 3 + 3j)
print ("Набор ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… чисСл:", py_tuple)

# создаСм ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…
# Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ числа, строки, списки
py_tuple = (33, "33", [3, 3])
print ("ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…:", py_tuple)

# создаСм ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ
# Ρ‚.Π΅. Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
py_tuple = (('Ρ…', 'y', 'z'), ('X', 'Y', 'Z'))
print ("ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ:", py_tuple) 

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ.

 # output
ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ: ()
Набор ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π±Π΅Π· скобок: (33, 55, 77) type: 
Набор чисСл: (33, 55, 77)
Набор ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… чисСл: (33, 3.3, (3 + 3j))
ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…: (33, '33', [3, 3])
ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ: (('x', 'y', 'z'), ('X', 'Y', 'Z')) 
ИспользованиС встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Β«tuple ()Β» для создания ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π‘ΠΌ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅.

 # созданиС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈΠ· Π½Π°Π±ΠΎΡ€Π°
>>> py_tuple = ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ({33, 55, 77})
>>> Ρ‚ΠΈΠΏ (py_tuple)
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>
>>> py_tuple
(33, 77, 55)
# созданиС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΈΠ· списка
>>> py_tuple = ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ([33, 55, 77])
>>> Ρ‚ΠΈΠΏ (py_tuple)
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>
>>> py_tuple
(33, 55, 77) 
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ пытаСмся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта.Π”ΠΎΡΡ‚ΠΈΡ‡ΡŒ этого Π½Π΅ Ρ‚Π°ΠΊ просто, ΠΊΠ°ΠΊ каТСтся.

 # ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ элСмСнт, ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΡ€ΡƒΠ³Π»Ρ‹ΠΌΠΈ скобками, создаст строку вмСсто ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
>>> py_tuple = ('ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ')
>>> Ρ‚ΠΈΠΏ (py_tuple)
<класс 'str'>
# Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π·Π°ΠΏΡΡ‚ΡƒΡŽ послС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ "ΠΎΠ΄ΠΈΠ½"
>>> py_tuple = ('ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ',)
>>> Ρ‚ΠΈΠΏ (py_tuple)
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>
# Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ список ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
>>> py_tuple = ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (['ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ'])
>>> Ρ‚ΠΈΠΏ (py_tuple)
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'>
# Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ элСмСнта ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
>>> py_tuple = ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ({'ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ'})
>>> Ρ‚ΠΈΠΏ (py_tuple)
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'> 

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ Π² Python?

Python прСдоставляСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ для доступа ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким элСмСнтам ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

Π§Π΅Ρ€Π΅Π· индСксированиС

Π‘Π°ΠΌΡ‹ΠΌ простым ΠΈΠ· Π½ΠΈΡ… являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ прямого доступа, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ индСкса [] для Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ с 0-ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ.

Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли ΠΊΠΎΡ€Ρ‚Π΅ΠΆ содСрТит Π΄Π΅ΡΡΡ‚ΡŒ элСмСнтов, Ρ‚ΠΎ индСкс Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с 0-Π³ΠΎ ΠΈ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° 9-ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Π½ΠΈΡ† ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ IndexError.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ индСкс всСгда являСтся Ρ†Π΅Π»Ρ‹ΠΌ числом. Π’Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой ΠΈΠ»ΠΈ Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ чисСл для индСксации.Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС TypeError.

Π”Π°Π»Π΅Π΅, Ссли ΠΊΠΎΡ€Ρ‚Π΅ΠΆ содСрТит Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Π² качСствС своих элСмСнтов, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π·Π° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ.

 vowel_tuple = ('а', 'С', 'я', 'о', 'и')
print ("ΠšΠΎΡ€Ρ‚Π΅ΠΆ:", vowel_tuple, "Length:", len (vowel_tuple))

# Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта
print ("OP (vowel_tuple [0]):", vowel_tuple [0])

# Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ послСднСго элСмСнта
print ("OP (vowel_tuple [Π΄Π»ΠΈΠ½Π°-1]):", vowel_tuple [len (vowel_tuple) - 1])

# Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ‡Π»Π΅Π½Π°
# Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ IndexError
ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π½Π°Π±ΠΎΡ€_гласных [Π½Π°Π±ΠΎΡ€_гласных) +1])
ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ex:
print ("OP (vowel_tuple [Π΄Π»ΠΈΠ½Π° + 1]) Ошибка:", ΠΏΡ€ΠΈΠΌΠ΅Ρ€)

# Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с Π½Π΅Ρ†Π΅Π»Ρ‹ΠΌ индСксом
# Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ TypeError
ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
print (vowel_tuple [0.0])
ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ex:
print ("OP (vowel_tuple [0.0]) Ошибка:", ΠΏΡ€ΠΈΠΌΠ΅Ρ€)

# Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ
t_o_t = (('янь', 'Ρ„Π΅Π²', 'ΠΌΠ°Ρ€'), ('вс', 'ΠΏΠ½', 'ср'))

# Доступ ΠΊ элСмСнтам ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
print ("OP (t_o_t [0] [2]):", t_o_t [0] [2])

# Доступ ΠΊ элСмСнтам ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
print ("OP (t_o_t [1] [2]):", t_o_t [1] [2]) 

ПослС выполнСния ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΊΠΎΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

 # output
ΠšΠΎΡ€Ρ‚Π΅ΠΆ: ('a', 'e', ​​'i', 'o', 'u') Π”Π»ΠΈΠ½Π°: 5
OP (vowel_tuple [0]): Π°
OP (vowel_tuple [Π΄Π»ΠΈΠ½Π°-1]): u
OP (vowel_tuple [length + 1]) Ошибка: индСкс ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Π½Π΅ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°
OP (vowel_tuple [0.0]) Ошибка: индСксы ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами ΠΈΠ»ΠΈ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ, Π° Π½Π΅ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ.
OP (t_o_t [0] [2]): ΠΌΠ°Ρ€
OP (t_o_t [1] [2]): ср 
Π§Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ

ΠšΠΎΡ€Ρ‚Π΅ΠΆ

Python ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ доступ ΠΊ элСмСнтам с использованиСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ индСкса (-ve).

ΠžΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ индСксированиС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

  • ИндСкс -1 прСдставляСт послСдний элСмСнт.
  • ИндСкс со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ -2 Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ элСмСнту с Π·Π°Π΄Π½Π΅ΠΉ стороны.

Для большСй ясности просмотритС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

 >>> гласныС = ('a', 'e', ​​'i', 'o', 'u')
>>> гласныС
('а', 'С', 'я', 'о', 'и')
>>> гласныС [-1]
'Ρ‚Ρ‹'
>>> гласныС [-2]
'ΠΎ'
>>> гласныС [-5]
'Π°'
>>> гласныС [-6]
ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ (послСдний Π²Ρ‹Π·ΠΎΠ² послСдний):
Π€Π°ΠΉΠ» "", строка 1, Π² 
гласныС [-6]
IndexError: индСкс ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Π½Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° 
Π§Π΅Ρ€Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π°Ρ€Π΅Π·ΠΊΠΈ

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ Π½Π΅ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ, Π° ΠΊ нСскольким элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ срСза Python.

ЕдинствСнноС Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅, Ρ‚. Π•. Β«:Β», ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π°Ρ€Π΅Π·ΠΊΠΈ Π² Python.

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Β«:Β» Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅.

 >>> Π±ΡƒΠ΄Π½ΠΈΠ΅ Π΄Π½ΠΈ = ('ΠΏΠ½', 'Π²Ρ‚', 'ср', 'Ρ‡Ρ‚', 'ΠΏΡ‚', 'сб', 'вс')
>>> Π±ΡƒΠ΄Π½ΠΈ
('ΠΏΠ½', 'Π²Ρ‚', 'ср', 'Ρ‡Ρ‚', 'ΠΏΡ‚', 'сб', 'вс')
# доступ ΠΊ элСмСнтам, оставляя ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ
>>> Π±ΡƒΠ΄Π½ΠΈΠ΅ Π΄Π½ΠΈ [1:]
(Π’Ρ‚, ср, Ρ‡Ρ‚, ΠΏΡ‚, сб, вс)
# доступ ΠΊ элСмСнтам ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈ пятой позициями
# Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈ пятой ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
>>> Π±ΡƒΠ΄Π½ΠΈ [1: 5]
(Π’Ρ‚, ср, Ρ‡Ρ‚, ΠΏΡ‚)
# доступ ΠΊ элСмСнтам послС пятой ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ
>>> Π±ΡƒΠ΄Π½ΠΈ [5:]
('сидСл', 'солнцС')
# доступ ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ пяти элСмСнтам
>>> Π±ΡƒΠ΄Π½ΠΈ [: 5]
('ΠΏΠ½', 'Π²Ρ‚', 'ср', 'Ρ‡Ρ‚', 'ΠΏΡ‚')
# доступ ΠΊ элСмСнтам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ послС
# считая ΠΏΡΡ‚ΡŒ с Ρ‚Ρ‹Π»Π°
>>> Π±ΡƒΠ΄Π½ΠΈΠ΅ Π΄Π½ΠΈ [: - 5]
('ΠΏΠ½', 'Π²Ρ‚')
# доступ ΠΊ пяти элСмСнтам сзади
>>> Π±ΡƒΠ΄Π½ΠΈΠ΅ Π΄Π½ΠΈ [-5:]
('ср', 'Ρ‡Ρ‚', 'ΠΏΡ‚', 'сб', 'вс')
# доступ ΠΊ элСмСнтам ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
>>> Π±ΡƒΠ΄Π½ΠΈΠ΅ Π΄Π½ΠΈ [:]
('ΠΏΠ½', 'Π²Ρ‚', 'ср', 'Ρ‡Ρ‚', 'ΠΏΡ‚', 'сб', 'вс') 

Как ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ / ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Python?

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ нСизмСняСмы, каТСтся, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ возмоТности ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚Π΅ Π½Π°Π±ΠΎΡ€ элСмСнтов ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ, Python Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π΅ΠΌΡƒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ. Но Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° Π·Π°Π³Π²ΠΎΠ·Π΄ΠΊΠ°: Ρ‡Ρ‚ΠΎ, Ссли элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ устанавливаСтС, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ.

Если Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ случай, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнты вмСсто нСпосрСдствСнного измСнСния ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Ρ€Π°Π·Π½Ρ‹Π΅ значСния. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅.

 py_tuple = (22, 33, 55, 66, [88, 99])
print ("ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ:", py_tuple)

# ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ py_tuple
# Он Π²Π΅Ρ€Π½Π΅Ρ‚ TypeError
ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
py_tuple [0] = 11
ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ex:
print ("Ошибка OP (py_tuple [0]):", ΠΏΡ€ΠΈΠΌΠ΅Ρ€)

# ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ значСния измСняСмых
# элСмСнтов Π²Π½ΡƒΡ‚Ρ€ΠΈ py_tuple i.Π΅. список
py_tuple [4] [0] = 77
py_tuple [4] [1] = 88
print ("ΠšΠΎΡ€Ρ‚Π΅ΠΆ послС ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ:", py_tuple)

# ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ Π½ΠΎΠ²Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅
py_tuple = ('ΠΏΠ½', 'Π²Ρ‚,' ср ')
print ("ΠšΠΎΡ€Ρ‚Π΅ΠΆ послС пСрСназначСния:", py_tuple) 

ПослС выполнСния ΠΏΡ€ΠΈΠΌΠ΅Ρ€ даст ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

 # output
ΠšΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ: (22, 33, 55, 66, [88, 99])
OP (py_tuple [0]) Ошибка: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ "ΠΊΠΎΡ€Ρ‚Π΅ΠΆ" Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнтов.
ΠšΠΎΡ€Ρ‚Π΅ΠΆ послС ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ: (22, 33, 55, 66, [77, 88])
ΠšΠΎΡ€Ρ‚Π΅ΠΆ послС пСрСназначСния: ('ΠΏΠ½', 'Π²Ρ‚', 'ср') 

Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² + (конкатСнация) ΠΈ * (ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅) .

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ «плюс» ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°.

 >>> first_tuple = ('Ρ€', 'Ρƒ', 'Ρ‚')
>>> second_tuple = ('Ρ‡', 'ΠΎ', 'ΠΏ')
>>> full_tuple = first_tuple + second_tuple
>>> full_tuple
('p', 'y', 't', 'h', 'o', 'n')
>>> 

И ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Π°ΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ элСмСнты Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ количСство Ρ€Π°Π·.

 >>> init_tuple = ("Π²ΠΈΠ»ΠΊΠ°",)
>>> fork_tuple = init_tuple * 5
>>> fork_tuple
('Π²ΠΈΠ»ΠΊΠ°', 'Π²ΠΈΠ»ΠΊΠ°', 'Π²ΠΈΠ»ΠΊΠ°', 'Π²ΠΈΠ»ΠΊΠ°', 'Π²ΠΈΠ»ΠΊΠ°')
>>> 

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ / ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Python?

ΠΠ΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° снова ΠΏΠΎΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π²Π°ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Python.Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π½ΠΎ Π²ΠΎΡ‚ ΠΊΠΎΠ΅-Ρ‡Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ.

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово del Π² Python ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ вас ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅.

 py_tuple = ('Ρ€', 'Ρƒ', 'Ρ‚', 'Ρ‡', 'ΠΎ', 'Π½')

# нСльзя ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ элСмСнт ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°
ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
дСль py_tuple [0]
ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ex:
print ("Ошибка OP (del py_tuple [0]):", ΠΏΡ€ΠΈΠΌΠ΅Ρ€)

# Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ вСсь ΠΊΠΎΡ€Ρ‚Π΅ΠΆ
дСль py_tuple
ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ:
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (py_tuple)
ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ex:
print ("print (py_tuple) => Ошибка:", Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€) 

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° даст Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

 # output
del py_tuple [0] => Ошибка: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ 'tuple' Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта
print (py_tuple) => Ошибка: имя 'py_tuple' Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ 

ΠŸΠ΅Ρ€Π²Π°Ρ строка Π²Ρ‹Π²ΠΎΠ΄Π° сообщаСт, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. Но Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ строкС написано, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΡƒΠΆΠ΅ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΈ пытаСмся Ρ€Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

Π Π°Π·Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ

ВСстированиС члСнства Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ Python

Π’Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΌΡ‹ это сдСлали Π² Python, установили , здСсь Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Β«inΒ» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ тСст члСнства Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

 >>> py_tuple = ('Ρ€', 'Ρƒ', 'Ρ‚', 'Ρ‡', 'ΠΎ', 'Π½')
>>> print ("ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ тСст: сущСствуСт Π»ΠΈ 'p'?", 'p' Π² py_tuple)
ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ тСст: сущСствуСт Π»ΠΈ Β«pΒ»? ΠŸΡ€Π°Π²Π΄Π°
>>> print ("Π’Ρ‚ΠΎΡ€ΠΎΠΉ тСст: сущСствуСт Π»ΠΈ 'z'?", 'z' Π² py_tuple)
Π’Ρ‚ΠΎΡ€ΠΎΠΉ тСст: сущСствуСт Π»ΠΈ Β«zΒ»? Π›ΠΎΠΆΡŒ
>>> print (Β«Π’Ρ€Π΅Ρ‚ΠΈΠΉ тСст: сущСствуСт Π»ΠΈ 'n'?Β», 'n' Π² py_tuple)
Π’Ρ€Π΅Ρ‚ΠΈΠΉ тСст: сущСствуСт Π»ΠΈ Β«Π½Β»? ΠŸΡ€Π°Π²Π΄Π°
>>> print («ПослСдний тСст: Π½Π΅ сущСствуСт?Β», Β«tΒ» Π½Π΅Ρ‚ Π² py_tuple)
ПослСдний тСст: "НС сущСствуСт"? Π›ΠΎΠΆΡŒ
>>> 
ΠžΠ±Ρ…ΠΎΠ΄ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Python

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» for ΠΈ ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊΠΎ всСм элСмСнтам Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅.

 >>> py_tuple = ('Ρ€', 'Ρƒ', 'Ρ‚', 'Ρ‡', 'ΠΎ', 'Π½')
>>> для элСмСнта Π² py_tuple:
print ("Π­Π»Π΅ΠΌΠ΅Π½Ρ‚:", элСмСнт)

ΠŸΡƒΠ½ΠΊΡ‚: p
ΠŸΡƒΠ½ΠΊΡ‚: y
ΠŸΡƒΠ½ΠΊΡ‚: Ρ‚
ΠŸΡƒΠ½ΠΊΡ‚: h
ΠŸΡƒΠ½ΠΊΡ‚: o
Артикул: n 

ИспользованиС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Python

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…

ΠšΠΎΡ€Ρ‚Π΅ΠΆ обСспСчиваСт быстрый способ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ упорядочивания Π΄Π°Π½Π½Ρ‹Ρ…. Он ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ любоС количСство элСмСнтов Π² Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅.

Они ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π°ΠΌ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² Ρ„ΠΎΡ€ΠΌΠ΅ записСй, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ запись ΠΎ сотрудникС.ΠšΠΎΡ€Ρ‚Π΅ΠΆ позволяСт Π½Π°ΠΌ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ²ΡΠ·Π°Π½Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅.

 >>> emp_records = ('john', 'hr', 2010, 'robert', 'account', 2015, 'bill', 'mis', 2018)
>>> emp_records [3]
'Π ΠΎΠ±Π΅Ρ€Ρ‚' 
ΠŸΡ€ΠΈΡΠ²ΠΎΠΉΡ‚Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΡƒ

ΠšΠΎΡ€Ρ‚Π΅ΠΆ

Python ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΈΠ·Π²Π΅ΡΡ‚Π½ΡƒΡŽ ΠΊΠ°ΠΊ «присвоСниС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉΒ». Π­Ρ‚ΠΎ позволяСт Π½Π°ΠΌ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… слСва ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° для ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ· ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° справа.

 >>> emp_records = ('john', 'hr', 2010, 'robert', 'account', 2015, 'bill', 'mis', 2018)
>>> (emp_name, emp_dept, emp_join_date) = emp_records [0: 3]
>>> emp_name
'Π”ΠΆΠΎΠ½'
>>> emp_dept
'час'
>>> emp_join_date
2010 
ИспользованиС ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π² функциях ΠΊΠ°ΠΊ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.Однако ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ввСсти ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π² ситуациях, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ часы, ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, сСкунды, Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ количСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² аксСссуаров ΠΈΠ»ΠΈ Ρ†Π΅Π½Ρ‹ Π½Π° нСсколько ΠΊΠ½ΠΈΠ³, написанных ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ.

 def ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ (n1, n2):
    Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ (n1 * n1, n2 * n2)

print (Π²Π²Π΅Π΄ΠΈΡ‚Π΅ (ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ (2, 3))) 
 # output
<класс 'ΠΊΠΎΡ€Ρ‚Π΅ΠΆ'> 
Π‘ΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ

ΠšΠΎΡ€Ρ‚Π΅ΠΆΠΈ — это Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΊΠ°ΠΊ элСмСнт.ΠœΡ‹ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ.

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. НапримСр, Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ вСсти подсчСт сотрудников Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΡ‚Π΄Π΅Π»Π΅ вмСстС с ΠΈΡ… ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, долТностями ΠΈ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π°ΠΌΠΈ, Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Π½Π°ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ это эффСктивно.

 сотрудников = [
("HR", 2, [('david', 'manager', 100000), ('bruno', 'asst. Manager', 50000)])
("ИВ", 2, [('ΠšΠΈΡ€ΠΊ', 'Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ Π³Ρ€ΡƒΠΏΠΏΡ‹', 150000), ('ΠœΡΡ‚Ρ‚', 'ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€', 45000)])
("ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ", 2, [('Π±ΠΈΠ»Π»ΠΈ', 'Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΎΡ‚Π΄Π΅Π»Π° ΠΏΡ€ΠΎΠ΄Π°ΠΆ', 250000), ('Π’ΠΎΠΌ', 'Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ', 95000)])
   ] 

БыстроС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ — ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Python

Π’ этом руководствС ΠΌΡ‹ рассмотрСли Β«ΠšΠΎΡ€Ρ‚Π΅ΠΆ PythonΒ» , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· основных доступных структур Π΄Π°Π½Π½Ρ‹Ρ….Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ Π·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² Python.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Ссли Π²Ρ‹ ΡƒΠ·Π½Π°Π»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ· этого класса, ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ этим со своими ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΊ нашим ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌ записям Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях ( Facebook / Twitter ), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ своСврСмСнныС обновлСния.

БСст,

TechBeamers

.

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

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