🐍 Π‘Π°ΠΌΠΎΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒ ΠΏΠΎ Python для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π§Π°ΡΡ‚ΡŒ 5. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками ΠΈ списковыми Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ

Рассмотрим ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ списков, ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ списковых Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.

Бписок Π² Python – это структура Π΄Π°Π½Π½Ρ‹Ρ… для хранСния ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, состоящСй ΠΈΠ· чисСл, строк, ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… символов. Π’Π°ΠΊΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹ΠΌΠΈ (состоящими ΠΈΠ· Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°), Ρ‚Π°ΠΊ ΠΈ ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹ΠΌΠΈ:

my_list1 = [1, 2, 3, 4, 5]
my_list2 = ['P', 'y', 't', 'h', 'o', 'n']
my_list3 = ['адрСс', 'Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½', 'имя']
my_list4 = ['Π•Π²Π³Π΅Π½ΠΈΠΉ', 23, 'Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ', 1.77]

ЗначСния, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… состоит список, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ элСмСнтами списка. К элСмСнтам списка ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ индСксам (нумСрация, ΠΊΠ°ΠΊ ΠΈ Π² случаС со строками, всСгда начинаСтся с 0), ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ нумСрация Ρ‚Π°ΠΊΠΆΠ΅ поддСрТиваСтся:

>>> my_lst = ['P', 'y', 't', 'h', 'o', 'n']
>>> print(my_lst[2])
t
>>> print(my_lst[-3])
h

Как ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со строками, для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ со списками ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ срСзы:

>>> lst = [1, 3, 2, 4, 5]
>>> print(lst[::-1])
[5, 4, 2, 3, 1]
>>> print(lst[1:4])
[3, 2, 4]

Бписки Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ массивам Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования. Бписки Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ – Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Ρ‡Π°Ρ‰Π΅ всСго Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Π΅ (ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹):

matrix = [[2, 4, 6, 8, 10], [3, 6, 9, 12, 15], [4, 8, 12, 16, 20]]
matrix2 = [[12, 14, 16, 18, 10],
           [13, 16, 19, 12, 15],
           [14, 18, 12, 16, 20]]

Π˜Π½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡ элСмСнтов Π² ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… списках Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π° матСматичСской – Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ нумСрация начинаСтся с 0, Π° Π½Π΅ с 1. Для обращСния ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ элСмСнту Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ столбца ΠΈ строки:

>>> lst = [[1, 3, 2], [4, 5, 6], [7, 8, 9], [2, 1, 8], [7, 3, 4]]
>>> print(lst[2][2])
9

Для слоТных матСматичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ NumPy.

🐍 Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° питониста
Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° питониста»
πŸπŸŽ“ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° собСса ΠΏΠΎ Python
ΠŸΠΎΠ΄Ρ‚ΡΠ½ΡƒΡ‚ΡŒ свои знания ΠΏΠΎ Python Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° собСса ΠΏΠΎ PythonΒ»
🐍🧩 Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π°Π΄Π°Ρ‡ ΠΏΠΎ Python
Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ Python для ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π°Π΄Π°Ρ‡ ΠΏΠΎ PythonΒ»

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

Π•ΡΡ‚ΡŒ нСсколько способов ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ список – Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ввСсти Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ list() ΠΈΠ»ΠΈ split(). Рассмотрим всС эти способы ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ: ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ списка Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ

Бписок с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ создаСтся простым пСрСчислСниСм Π½ΡƒΠΆΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках []:

num_list = [5, 15, 25, 0, 6]
symb_list = ['a', 'b', 'c', 'd']

Для создания пустого списка достаточно ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° Ρ‚ΠΈΠΏ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок ΠΈΠ»ΠΈ встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ list():

spisok = []
my_lst = list()

Π’Ρ‚ΠΎΡ€ΠΎΠΉ способ: ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² список

Π£ΠΆΠ΅ упомянутая функция list() позволяСт ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ строку Π² список:

>>> my_lst = list('Python')
>>> print(my_lst)
['P', 'y', 't', 'h', 'o', 'n']

ΠŸΡ€ΠΈ этом list() ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ функциями. Π’Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄ΠΈΠΌΡƒΡŽ строку Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ символы:

>>> sp = list(input())
Π― ΠΈΠ·ΡƒΡ‡Π°ΡŽ Python
>>> print(sp)
['Π―', ' ', 'ΠΈ', 'Π·', 'Ρƒ', 'Ρ‡', 'Π°', 'ю', ' ', 'P', 'y', 't', 'h', 'o', 'n']

Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях для прСобразования строки Π² список достаточно split():

>>> sp = 'Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ПО Π½Π° языкС Python'.split()
>>> print(sp)
['Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°', 'ПО', 'Π½Π°', 'языкС', 'Python']

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ split() ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ строку ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ раздСлитСлям – ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ это ΠΏΡ€ΠΎΠ±Π΅Π»:

>>> sp = input().split()
Π― ΠΈΠ·ΡƒΡ‡Π°ΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков
>>> print(sp)
['Π―', 'ΠΈΠ·ΡƒΡ‡Π°ΡŽ', 'ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹', 'списков']

Π Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Π°, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…:

>>> lst = input().split(';')
Π½ΠΎΠΌΠ΅Ρ€;модСль;Ρ†Π΅Π½Π°;количСство
>>> print(lst)
['Π½ΠΎΠΌΠ΅Ρ€', 'модСль', 'Ρ†Π΅Π½Π°', 'количСство']

ИспользованиС strip() обСспСчиваСт ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ строки, Π° map() примСняСт Π½ΡƒΠΆΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠΎ всСм элСмСнтам списка. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ map() примСняСт int() ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ символу строки, прСобразовывая строковыС символы Π² Ρ†Π΅Π»Ρ‹Π΅ числа:

>>> my_lst = list(map(int, input().strip().split()))
   3 4 5 2 3 4 5 6 1 2 8	
>>> print(my_lst)
[3, 4, 5, 2, 3, 4, 5, 6, 1, 2, 8]

Π’Ρ€Π΅Ρ‚ΠΈΠΉ способ: гСнСрация списков

ΠŸΡ€ΠΈ нСобходимости список ΠΌΠΎΠΆΠ½ΠΎ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π‘Π°ΠΌΡ‹ΠΉ простой ΠΌΠ΅Ρ‚ΠΎΠ΄ – ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ range(), которая обСспСчит автоматичСскоС созданиС списка, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ значСния ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°:

>>> my_lst = list(range(5))
>>> print(my_lst)
[0, 1, 2, 3, 4]
>>> my_lst = list(range(1, 25, 2))
>>> print(my_lst)
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23]

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ списка – использованиС list comprehension (списковоС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅). Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ список создаСтся ΠΈΠ· Ρ‡Π΅Ρ‚Π½Ρ‹Ρ… чисСл, входящих Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½:

>>> my_lst = [i for i in range(1, 51) if i % 2 == 0]
>>> print(my_lst)
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]

А здСсь список составляСтся ΠΈΠ· чисСл, Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚:

>>> sqr = [i ** 2 for i in range(20)]
>>> print(sqr)
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361]

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ списковыС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ списки ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ ΠΈ условиям, ΠΈΡ… часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π² качСствС ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΠΉ Π·Π°ΠΌΠ΅Π½Ρ‹ Ρ†ΠΈΠΊΠ»ΠΎΠ² for ΠΈ условий if, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅:

>>> my_str = '6emds83mmsad99342n42ld9xm37vn4820'
>>> my_lst2 = [i for i in my_str if i.isnumeric()]
>>> print(my_lst2)
['6', '8', '3', '9', '9', '3', '4', '2', '4', '2', '9', '3', '7', '4', '8', '2', '0']

Π’Ρ‹Π²ΠΎΠ΄ ΠΈ распаковка списка

ΠŸΡ€ΠΈ стандартном использовании print() элСмСнты выводятся Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… (Ссли это строковыС Π΄Π°Π½Π½Ρ‹Π΅) ΠΈ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках. Π˜Π·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ ΠΈ скобок ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ распаковки *:

>>> lst = [1, 2, 3, 4, 5]
>>> lst2 = ['a', 'b', 'c', 'd', 'e']
>>> print(*lst)
1 2 3 4 5
>>> print(*lst2)
a b c d e

Для Π²Ρ‹Π²ΠΎΠ΄Π° Π² столбик пригодится Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ /n:

>>> my_lst = list('JavaScript')
>>> print(*my_lst, sep='\n')
J
a
v
a
S
c
r
i
p
t

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ списков

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

ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт списка – max() ΠΈ min():

>>> sp = [5, 6, 2, 90, 12, 0, 4, 1, 3]
>>> print(max(sp), min(sp))
90 0

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ max() ΠΈ min() ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π»ΠΈΠ½Ρƒ key=len:

>>> lst = ['яблоко', 'апСльсин', 'дыня']
>>> print(max(lst, key=len))
апСльсин
>>> print(min(lst, key=len))
дыня

Π‘ΡƒΠΌΠΌΠ° элСмСнтов списка – sum():

>>> sp = [5, 3, 2, 1, 9, 0, 7]
>>> print(sum(sp))
27

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ ΠΈ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ – sort() ΠΈ sort с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ reverse=True:

>>> lst = [7, 6, 0, 9, 5, 3, 2, 8, 1]
>>> lst.sort()
>>> print(lst)
[0, 1, 2, 3, 5, 6, 7, 8, 9]
>>> lst.sort(reverse=True)
>>> print(lst)
[9, 8, 7, 6, 5, 3, 2, 1, 0]
>>> my_lst = ['яблоко', 'ананас', 'Π³Ρ€ΡƒΡˆΠ°']
>>> my_lst.sort()
>>> print(my_lst)
['ананас', 'Π³Ρ€ΡƒΡˆΠ°', 'яблоко']
>>> my_lst.sort(reverse=True)
>>> print(my_lst)
['яблоко', 'Π³Ρ€ΡƒΡˆΠ°', 'ананас']

ΠŸΠ΅Ρ€Π΅ΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° элСмСнтов Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС – reverse():

>>> lst = ['ΠΌ', 'ΠΎ', 'Π½', 'ΠΈ', 'Ρ‚', 'ΠΎ', 'Ρ€']
>>> lst.reverse()
>>> print(lst)
['Ρ€', 'ΠΎ', 'Ρ‚', 'ΠΈ', 'Π½', 'ΠΎ', 'ΠΌ']

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта append() ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ списка Π΄Ρ€ΡƒΠ³ΠΈΠΌ списком – extend():

>>> lst = ['a', 'b', 'c']
>>> lst.append('d')
>>> print(lst)
['a', 'b', 'c', 'd']
>>> lst2 = ['k', 'l', 'm']
>>> lst.extend(lst2)
>>> print(lst)
['a', 'b', 'c', 'd', 'k', 'l', 'm']

ΠŸΠΎΠ΄ΡΡ‡Π΅Ρ‚ количСства всСх элСмСнтов списка len() ΠΈ подсчСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… элСмСнтов count():

>>> lst = ['a', 'b', 'r', 'a', 'c', 'a', 'd', 'a', 'b', 'r', 'a']
>>> print(len(lst))
11
>>> print(lst.count('a'))
5

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта ΠΏΠΎ индСксу – del() ΠΈ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ – remove():

>>> lst = ['ΠΏ', 'Ρ€', 'ΠΎ', 'Π³', 'Ρ€', 'Π°', 'ΠΌ', 'ΠΌ', 'Π°']
>>> del lst[5]
>>> del lst[-1]
>>> print(lst)
['ΠΏ', 'Ρ€', 'ΠΎ', 'Π³', 'Ρ€', 'ΠΌ', 'ΠΌ']
>>> lst.remove('Π³')
>>> print(lst)
['ΠΏ', 'Ρ€', 'ΠΎ', 'Ρ€', 'ΠΌ', 'ΠΌ']
>>> del lst[2:4]
>>> print(lst)
['ΠΏ', 'Ρ€', 'ΠΌ', 'ΠΌ']

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ послСднСго элСмСнта – pop():

>>> lst = ['ΠΌ', 'ΠΎ', 'Π½', 'ΠΈ', 'Ρ‚', 'ΠΎ', 'Ρ€']
>>> print(lst.pop())
Ρ€

Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ индСкс элСмСнта, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ вмСсто послСднСго:

>>> lst = ['Π½', 'ΠΎ', 'Ρƒ', 'Ρ‚', 'Π±', 'Ρƒ', 'ΠΊ']
>>> lst.pop(3)
'Ρ‚'
>>> lst.pop(5)
'ΠΊ'
>>> print(lst)
['Π½', 'ΠΎ', 'Ρƒ', 'Π±', 'Ρƒ']

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ всСх элСмСнтов списка – clear():

>>> lst = ['ΠΊ', 'Ρƒ', 'Ρ€', 'с']
>>> lst.clear()
>>> print(lst)
[]

Вставка элСмСнта Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ – insert():

>>> lst = ['П', 'Ρ‚', 'ΠΎ', 'Π½']
>>> lst.insert(1, 'Π°')
>>> lst.insert(2, 'ΠΉ')
>>> print(lst)
['П', 'Π°', 'ΠΉ', 'Ρ‚', 'ΠΎ', 'Π½']

ИндСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния элСмСнта index() Π² спискС ΠΈΠ»ΠΈ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅:

>>> lst = ['Π½', 'ΠΎ', 'Ρƒ', 'Ρ‚', 'Π±', 'Ρƒ', 'ΠΊ']
>>> print(lst.index('Ρƒ'))
2
>>> print(lst.index('Ρƒ', 3, 6))
5

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ повСрхностной ΠΊΠΎΠΏΠΈΠΈ списка – copy():

>>> lst = [1, 2, 3, [5, 6]]
>>> lst2 = lst.copy()
>>> print(lst2)
[1, 2, 3, [5, 6]]

ОбъСдинСниС элСмСнтов списка Π² строку – join():

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΌΡ‹ ΡƒΠΆΠ΅ рассматривали Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ – ΠΎΠ½ относится ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ списков, ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ строк:

>>> lst = ['|', '|', '|', '|', '|', '|']
>>> print('***'.join(lst))
|***|***|***|***|***|
>>> print('_'.join(lst))
|_|_|_|_|_|
>>> print(''.join(lst))
||||||

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° списков – zip():

>>> list1 = [3, 4, 1, 2, 7]
>>> list2 = [6, 9, 2, 5, 3]
>>> list3 = [i + j for i, j in zip(list1, list2)]
>>> print(list3)
[9, 13, 3, 7, 10]

ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°

Π—Π°Π΄Π°Π½ΠΈΠ΅ 1

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку, Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΈΠ· Π½Π΅Π΅ всС числа, ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚:

  • минимальноС число;
  • максимальноС число;
  • сумму всСх чисСл.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

5rff09832ejwfdew09f034

Π’Ρ‹Π²ΠΎΠ΄:

0
9
43

РСшСниС:

lst = [int(i) for i in input() if i.isdigit()]
print(min(lst), max(lst), sum(lst), sep='\n')

Π—Π°Π΄Π°Π½ΠΈΠ΅ 2

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая:

  • ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ числовых символов;
  • ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ символы Π² Ρ†Π΅Π»Ρ‹Π΅ числа;
  • Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ· чисСл список, Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π² Π½Π΅Π³ΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹, Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π² исходной строкС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 1 Ρ€Π°Π·;
  • Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ список Π±Π΅Π· скобок.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

3 4 5 1 2 3 6 7 4 8 9 4 5 6 6

Π’Ρ‹Π²ΠΎΠ΄:

3 4 5 3 6 4 4 5 6 6

РСшСниС:

st = [int(i) for i in input().split()]
lst = [i for i in st if st.count(i) > 1]
print(*lst)

Π—Π°Π΄Π°Π½ΠΈΠ΅ 3

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая:

  • ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку чисСл, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми;
  • Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ· чисСл Π΄Π²Π° списка – с Ρ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ ΠΈ Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ числами;
  • Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ списки Π±Π΅Π· скобок Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… строках.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Β«Π½Π΅ Ρ€Π°Π²Π½ΠΎΒ» Π² Python обозначаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ !=.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

3,4,2,7,8,9,1,11,2,56,2,6,81

Π’Ρ‹Π²ΠΎΠ΄:

3 7 9 1 11 81
4 2 8 2 56 2 6

РСшСниС:

st = [int(i) for i in input().split(',')]
lst_odd = [i for i in st if i % 2 != 0]
lst_even = [i for i in st if i % 2 == 0]
print(*lst_odd)
print(*lst_even)

Π—Π°Π΄Π°Π½ΠΈΠ΅ 4

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая:

  • ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ слово, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½Π° Π±ΡƒΠΊΠ²Π° ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ повторяСтся Π±ΠΎΠ»Π΅Π΅ 2 Ρ€Π°Π· подряд;
  • Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ, число ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ исправлСнноС слово (Ссли число ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ² 1, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС – сообщСниС НС ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ.

ГарантируСтся, Ρ‡Ρ‚ΠΎ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Π°Ρ Π±ΡƒΠΊΠ²Π° Π½Π΅ встрСчаСтся Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… частях слова, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π½Π° Π²Ρ…ΠΎΠ΄ слова Ρ‚ΠΈΠΏΠ° Β«ΠΊΠΎΠ»Π»Π»Π»Π΅ΠΊΡ‚ΠΈΠ²Β», Π° Π½Π΅ Β«ΠΊΠΎΠΌΠΌΠΌΡƒΠ½ΠΈΠ·ΠΌΒ».

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π° 1:

колллаборация

Π’Ρ‹Π²ΠΎΠ΄:

Π‘ΡƒΠΊΠ²Π° "Π»" ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ повторяСтся 1 Ρ€Π°Π·(Π°)
Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ΅ слово: коллаборация

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π° 2:

Π”ΠΈΠ»Π΅ΠΌΠΌΠΌΠΌΠ°

Π’Ρ‹Π²ΠΎΠ΄:

Π‘ΡƒΠΊΠ²Π° "ΠΌ" ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ повторяСтся 2 Ρ€Π°Π·(Π°)
НС ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π² print() ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ условия if ΠΈ else, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

print("Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 1" if i > 5 else "Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 2")

РСшСниС:

st = list(input())
err = [st.index(i) for i in st if st.count(i) > 2]
letter = st[err[0]]
st.remove(letter)
print(f'Π‘ΡƒΠΊΠ²Π° "{letter}" ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ повторяСтся {len(err) - 2} Ρ€Π°Π·(Π°)')
print(f'Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ΅ слово: {"".join(st)}' if len(err) == 3 else 'НС ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ')

Π—Π°Π΄Π°Π½ΠΈΠ΅ 5

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая:

  • ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ (Π² любой ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ) символ #;
  • Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈ удаляСт # ΠΏΠΎ индСксу;
  • Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½Π½ΡƒΡŽ строку ΠΈ Π΅Π΅ самоС Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ слово.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

Π‘Π΅Π· Ρ‚Ρ€ΡƒΠ΄#Π° Π½Π΅ Π²Ρ‹Π»ΠΎΠ²ΠΈΡˆΡŒ ΠΈ Ρ€Ρ‹Π±ΠΊΡƒ ΠΈΠ· ΠΏΡ€ΡƒΠ΄Π°

Π’Ρ‹Π²ΠΎΠ΄:

Π‘Π΅Π· Ρ‚Ρ€ΡƒΠ΄Π° Π½Π΅ Π²Ρ‹Π»ΠΎΠ²ΠΈΡˆΡŒ ΠΈ Ρ€Ρ‹Π±ΠΊΡƒ ΠΈΠ· ΠΏΡ€ΡƒΠ΄Π°
Π’Ρ‹Π»ΠΎΠ²ΠΈΡˆΡŒ

РСшСниС:

st = list(input())
err = st.index('#')
del st[err]
sp = ''.join(st)
word = max(sp.split(), key=len)
print(sp, word, sep='\n')

Π—Π°Π΄Π°Π½ΠΈΠ΅ 6

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая:

  • ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· случайных слов;
  • отбрасываСт слова, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅ΡΡ‚ΡŒ Π½Π΅Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹Π΅ символы;
  • пСрСставляСт слова Π² порядкС возрастания;
  • Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран слова Π² столбик, Π±Π΅Π· ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

Ρ„Ρ€ΡƒΠΊΡ‚Ρ‹ ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ²Ρ‹ΠΉ Π³Ρ€ΡƒΠ·@Π²ΠΈΠΊ Ρ†Π²Π΅Ρ‚Ρ‹ Π½Π΅Π²Π·56Π³ΠΎΠ΄Ρ‹ Π΄Π΅Ρ€#Π΅Π²ΠΎ Π·Π°Π΄Π°Ρ‡ΠΊΠ° Π²ΠΈΠ½ΠΎΠ³Ρ€Π°Π΄Π½ΠΈΠΊ Π³Ρ€ΠΎΠ·ΠΎΠ²ΠΎΠΉ Π·ΠΈΠΌΠ° яб7Π»ΠΎΠΊΠΎ

Π’Ρ‹Π²ΠΎΠ΄:

Π·ΠΈΠΌΠ°
Ρ†Π²Π΅Ρ‚Ρ‹
Ρ„Ρ€ΡƒΠΊΡ‚Ρ‹
Π·Π°Π΄Π°Ρ‡ΠΊΠ°
Π³Ρ€ΠΎΠ·ΠΎΠ²ΠΎΠΉ
ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ²Ρ‹ΠΉ
Π²ΠΈΠ½ΠΎΠ³Ρ€Π°Π΄Π½ΠΈΠΊ

РСшСниС:

sp = input().split()
sp = [i for i in sp if i.isalpha()]
sp.sort(key=len)
print(*sp, sep='\n')

Π—Π°Π΄Π°Π½ΠΈΠ΅ 7

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку, ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ· Π½Π΅Π΅ 2 списка:

  • Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ список входят слова, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с гласных Π±ΡƒΠΊΠ²;
  • Π²Ρ‚ΠΎΡ€ΠΎΠΉ список состоит ΠΈΠ· слов, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…ΡΡ с согласных.

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π΄Π²Π΅ строки Π±Π΅Π· ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ ΠΈ скобок.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

ΠΊΠΎΡ‚ Ρ‘ΠΆ ΠΌΠΎΡ€Π΅ Сль Π±Π΅Ρ€Π΅Π·Π° апСльсин Π±ΠΈΡ€ΡŽΠ·Π° имитация

Π’Ρ‹Π²ΠΎΠ΄:

Ρ‘ΠΆ Сль апСльсин имитация
ΠΊΠΎΡ‚ ΠΌΠΎΡ€Π΅ Π±Π΅Ρ€Π΅Π·Π° Π±ΠΈΡ€ΡŽΠ·Π°

РСшСниС:

vowels = 'Π°ΠΈΠ΅Ρ‘ΠΎΡƒΡ‹ΡΡŽΡ'
st = input().split()
lst1 = [i for i in st if i[0] in vowels]
lst2 = [i for i in st if i not in lst1]
print(*lst1)
print(*lst2)

Π—Π°Π΄Π°Π½ΠΈΠ΅ 8

Π˜ΠΌΠ΅ΡŽΡ‚ΡΡ Π΄Π²Π° списка:

keys = ['модСль', 'Ρ†Π΅Π½Π°', 'количСство', 'Ρ€Π°Π·ΠΌΠ΅Ρ€', 'Ρ†Π²Π΅Ρ‚', 'скидка']
values = ['XXLDude', 5678.00, 57, 'XXL', 'Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ', '12%']

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ эти списки ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран список Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°:

модСль: XXLDude
Ρ†Π΅Π½Π°: 5678.55
количСство: 57
Ρ€Π°Π·ΠΌΠ΅Ρ€: XXL
Ρ†Π²Π΅Ρ‚: Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ
скидка: 12%

РСшСниС:

keys = ['модСль', 'Ρ†Π΅Π½Π°', 'количСство', 'Ρ€Π°Π·ΠΌΠ΅Ρ€', 'Ρ†Π²Π΅Ρ‚', 'скидка']
values = ['XXLDude', 5678.55, 57, 'XXL', 'Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ', '12%']
res = [key + ': ' + str(value) for key, value in zip(keys, values)]
print(*res, sep='\n')

Π—Π°Π΄Π°Π½ΠΈΠ΅ 9

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ имя ΡƒΡ‡Π΅Π½ΠΈΠΊΠ° ΠΈ Π΅Π³ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΏΠΎ основным ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π°ΠΌ, ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ срСдний Π±Π°Π»Π» успСваСмости.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

Вася ΠŸΡƒΠΏΠΊΠΈΠ½, 4 5 3 4 5 3 4 5

Π’Ρ‹Π²ΠΎΠ΄:

Вася ΠŸΡƒΠΏΠΊΠΈΠ½, срСдний Π±Π°Π»Π»: 4.12

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: для Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π²ΡƒΡ… Π·Π½Π°ΠΊΠΎΠ² послС запятой Π² f-строках ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ :.2f.

РСшСниС:

lst = input().split(', ')
grades = [int(i) for i in lst[1].split()]
avg = sum(grades) / len(grades)
print(f'{lst[0]}, срСдний Π±Π°Π»Π»: {avg:.2f}')

Π—Π°Π΄Π°Π½ΠΈΠ΅ 10

Π˜Π³Ρ€ΡƒΡˆΠ΅Ρ‡Π½Ρ‹ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ пСрСдвигаСтся Π² соотвСтствии с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹ΠΌΠΈ Π² Π²ΠΈΠ΄Π΅ строки Π²ΠΈΠ΄Π° n35 s48 e88 w33 n12 s10, Π³Π΄Π΅ n – сСвСр, s – юг, w – Π·Π°ΠΏΠ°Π΄, e – восток, Π° Ρ†ΠΈΡ„Ρ€Ρ‹ – расстояниС Π² сантимСтрах. ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для опрСдСлСния x ΠΈ y ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ Ρ€ΠΎΠ±ΠΎΡ‚Π°. Π‘ΡƒΠ΄Π΅ΠΌ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ всСгда начинаСтся с 0, 0.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π²ΠΎΠ΄Π°:

n15 e12 s32 e18 w27 n50 s5 e45

Π’Ρ‹Π²ΠΎΠ΄:

x: 48, y: 28

РСшСниС:

route = input().split()
s = sum([int(i[1:]) for i in route if i[0] == 's'])
n = sum([int(i[1:]) for i in route if i[0] == 'n'])
w = sum([int(i[1:]) for i in route if i[0] == 'w'])
e = sum([int(i[1:]) for i in route if i[0] == 'e'])
print(f'x: {e - w}, y: {n - s}')

ПодвСдСм ΠΈΡ‚ΠΎΠ³ΠΈ

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ основныС (ΠΈ самыС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅) ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками ΠΈ списковыми Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ. БписковыС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ Ρ†ΠΈΠΊΠ»Ρ‹ с условиями ΠΈ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΊΠΎΠ΄ максимально Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΌ. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ расскаТСм ΠΏΡ€ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со словарями.

***

πŸ“– Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ самоучитСля

  1. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ, сфСры примСнСния, установка, ΠΎΠ½Π»Π°ΠΉΠ½ IDE
  2. ВсС, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ для изучСния Python с нуля – ΠΊΠ½ΠΈΠ³ΠΈ, сайты, ΠΊΠ°Π½Π°Π»Ρ‹ ΠΈ курсы
  3. Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…: ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ
  4. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками
  5. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками ΠΈ списковыми Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ
  6. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со словарями ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ словарСй
  7. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°ΠΌΠΈ
  8. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со мноТСствами
  9. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ†ΠΈΠΊΠ»Π° for
  10. Условный Ρ†ΠΈΠΊΠ» while
  11. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ
  12. АнонимныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  13. РСкурсивныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  14. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ порядка, замыкания ΠΈ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€Ρ‹
  15. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмой
  16. РСгулярныС выраТСния
  17. ΠžΡΠ½ΠΎΠ²Ρ‹ скрапинга ΠΈ парсинга
  18. ΠžΡΠ½ΠΎΠ²Ρ‹ ООП: инкапсуляция ΠΈ наслСдованиС
  19. ΠžΡΠ½ΠΎΠ²Ρ‹ ООП – абстракция ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ
  20. ГрафичСский интСрфСйс Π½Π° Tkinter
  21. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ³Ρ€ Π½Π° Pygame
  22. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с SQLite
  23. ΠžΡΠ½ΠΎΠ²Ρ‹ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Flask
  24. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с NumPy
  25. ΠžΡΠ½ΠΎΠ²Ρ‹ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½Ρ‹Ρ… с Pandas
***

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Π›Π£Π§Π¨Π˜Π• БВАВЬИ ПО Π’Π•ΠœΠ•

admin
11 дСкабря 2018

ООП Π½Π° Python: ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Python допускаСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π½ΠΎ Π² Π΅Π³ΠΎ основС...
admin
28 июня 2018

3 самых Π²Π°ΠΆΠ½Ρ‹Ρ… сфСры примСнСния Python: возмоТности языка

БущСствуСт мноТСство областСй примСнСния Python, Π½ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ½ особСнно...
admin
13 фСвраля 2017

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Python: ΠΎΡ‚ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π΄ΠΎ профСссионала

Пошаговая инструкция для всСх, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒΒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Python...