Программы на питоне список

Список в Python – это встроенный тип (класс) данных, представляющий собой одну из разновидностей структур данных. Структуру данных можно представить как сложную единицу, объединяющую в себе группу более простых. Каждая разновидность структур данных имеет свои особенности. Список – это изменяемая последовательность произвольных элементов.

В большинстве других языков программирования есть такой тип данных как массив. В Питоне такого встроенного типа нет. Однако при знакомстве с программированием списки условно можно считать аналогом массивов за одним исключением. Составляющие массив элементы должны принадлежать одному типу данных, для списков такого ограничения нет.

Например, массив может содержать только целые числа или только вещественные числа или только строки. Список также может содержать элементы исключительно одного типа, что делает его похожим на массив. Но вполне допустимо, чтобы в одном списке содержались как числа, так и строки или иные типы данных.

Создавать списки можно разными способами. Создадим его простым перечисление элементов:

#13. Списки — операторы и функции работы с ними | Python для начинающих


>>> a = [12, 3.85, «black», -4] >>> a [12, 3.85, ‘black’, -4]

Итак, у нас имеется список, присвоенный переменной a . В Python список определяется квадратными скобками. Он содержит четыре элемента. Если где-то в программе нам понадобится весь этот список, мы получим доступ к нему, указав всего лишь одну переменную – a .

Элементы в списке упорядочены, то есть имеет значение, в каком порядке они расположены. Каждому элементу соответствует свой индекс, или номер. Индексация начинается с нуля. В данном случае число 12 имеет индекс 0, строка «black» – индекс 2. Чтобы извлечь определенный элемент, надо после имени переменной указать в квадратных скобках его индекс:

>>> a = [12, 3.85, «black», -4] >>> a[0] 12 >>> a[3] -4

В Python существует также индексация с конца. Она начинается с -1:

>>> a[-1] -4 >>> a[-2] ‘black’ >>> a[-3], a[-4] (3.85, 12)

Часто требуется извлечь не один элемент, а так называемый срез – часть списка. В этом случае указывается индекс первого элемента среза и индекс следующего за последним элементом среза:

>>> a[0:2] [12, 3.85]

В данном случае извлекаются первые два элемента с индексами 0 и 1. Элемент с индексом 2 в срез уже не входит. В таком случае возникает вопрос, как извлечь срез, включающий в себя последний элемент? Если какой-либо индекс не указан, то считается, что имеется в виду начало или конец:

>>> a = [12, 3.85, «black», -4] >>> a[:3] [12, 3.85, ‘black’] >>> a[2:] [‘black’, -4] >>> a[:] [12, 3.85, ‘black’, -4]

Списки – изменяемые объекты. Это значит, что в них можно добавлять элементы, удалять их, изменять существующие. Проще всего изменить значение элемента. Для этого надо обратиться к нему по индексу и перезаписать значение в заданной позиции:

>>> a[1] = 4 >>> a [12, 4, ‘black’, -4]

Добавлять и удалять лучше с помощью специальных встроенных методов списка:

Python — Полный Курс по Python [10 ЧАСОВ]


>>> a.append(‘wood’) >>> a [12, 4, ‘black’, -4, ‘wood’] >>> a.insert(1, ‘circle’) >>> a [12, ‘circle’, 4, ‘black’, -4, ‘wood’] >>> a.remove(4) >>> a [12, ‘circle’, ‘black’, -4, ‘wood’] >>> a.pop() ‘wood’ >>> a [12, ‘circle’, ‘black’, -4] >>> a.pop(2) ‘black’ >>> a [12, ‘circle’, -4]

Перечень всех методов списка можно узнать с помощью встроенной в Python функции dir() , передав в качестве аргумента переменную, связанную со списком, или название класса (в данном случае – list ). В полученном из dir() списке надо смотреть имена без двойных подчеркиваний.

Для получения информации о конкретном методе следует воспользоваться встроенной функцией help() , передав ей в качестве аргумента имя метода, связанное с объектом или классом. Например, help(a.pop) или help(list.index) . Выход из справки – q.

Можно изменять списки не используя методы, а с помощью взятия и объединения срезов:

>>> b = [1, 2, 3, 4, 5, 6] >>> b = b[:2] + b[3:] >>> b [1, 2, 4, 5, 6]

Здесь берется срез из первых двух элементов и срез, начиная с четвертого элемента (индекс 3) и до конца. После чего срезы объединяются с помощью оператора «сложения».

Можно изменить не один элемент, а целый срез:

>>> mylist = [‘ab’,’ra’,’ka’,’da’,’bra’] >>> mylist[0:2] = [10, 20] >>> mylist [10, 20, ‘ka’, ‘da’, ‘bra’]

Пример создания пустого списка с последующим заполнением его в цикле случайными числами:

>>> import random >>> c = [] >>> i = 0 >>> while i < 10: . c.append(random.randint(0,100)) . i += 1 . >>> c [30, 44, 35, 77, 53, 44, 49, 17, 61, 82]

Практическая работа

  1. Напишите программу, которая запрашивает с ввода восемь чисел, добавляет их в список. На экран выводит их сумму, максимальное и минимальное из них. Для нахождения суммы, максимума и минимума воспользуйтесь встроенными в Python функциями sum() , max() и min() .
  2. Напишите программу, которая генерирует сто случайных вещественных чисел и заполняет ими список. Выводит получившийся список на экран по десять элементов в ряд. Далее сортирует список с помощью метода sort() и снова выводит его на экран по десять элементов в строке. Для вывода списка напишите отдельную функцию, в качестве аргумента она должна принимать список.

Примеры решения и дополнительные уроки в pdf-версии курса

X Скрыть Наверх

Python. Введение в программирование

Источник: younglinux.info

Программы на питоне список

Значения, из которых состоит список, называются элементами списка. К элементам списка можно обращаться по индексам (нумерация, как и в случае со строками, всегда начинается с 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 .

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека питониста»

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

Есть несколько способов создать список – данные можно ввести вручную, сгенерировать, преобразовать из какого-либо другого типа с помощью встроенных функций 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’Буква «» ошибочно повторяется раз(а)’) print(f’Исправленное слово: ‘ 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

Напишите программу, которая:

  • принимает на вход строку, состоящую из случайных слов;
  • отбрасывает слова, в которых есть небуквенные символы;
  • переставляет слова в порядке возрастания;
  • выводит на экран слова в столбик, без кавычек.

Пример ввода:

зима цветы фрукты задачка грозовой образцовый виноградник
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’, средний балл: ‘)

Задание 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: , y: ‘)

Подведем итоги

В этой статье мы изучили основные (и самые полезные) методы работы со списками и списковыми включениями.

Списковые включения отлично заменяют циклы с условиями и делают код максимально лаконичным. В следующей статье расскажем про методы работы со словарями.

Содержание самоучителя

  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

Материалы по теме

  • Быстрый путеводитель по Python: cписки за 7 минут
  • Фундаментальные структуры данных: массивы и связанные списки с реализацией на Python

Источник: proglib.io

Тип данных Python: список — упражнения, практика, решение

5. Напишите программу на Python для подсчета количества строк, длина строки которых равна 2 или более, а первый и последний символ совпадают с заданным списком строк. Перейти к редактору
Пример списка: [‘abc’, ‘xyz’, ‘aba’, ‘1221’]
Ожидаемый результат: 2
Нажмите меня, чтобы увидеть образец решения

6. Напишите программу на Python, чтобы получить список, отсортированный в порядке возрастания по последнему элементу в каждом кортеже из заданного списка непустых кортежей. Перейти к редактору
Список образцов: [(2, 5), (1, 2), (4, 4), (2, 3), (2, 1)]
Ожидаемый результат: [(2, 1), (1, 2), (2, 3), (4, 4), (2, 5)]
Нажмите меня, чтобы увидеть образец решения

7. Напишите программу на Python для удаления дубликатов из списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

8. Напишите программу на Python, чтобы проверить, пустой список или нет. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

9. Напишите программу на Python для клонирования или копирования списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

10. Напишите программу на Python, чтобы найти список слов, длина которых превышает n, из заданного списка слов. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

11. Напишите функцию Python, которая принимает два списка и возвращает True, если у них есть хотя бы один общий член. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

12. Напишите программу на Python для печати указанного списка после удаления 0-го, 4-го и 5-го элементов. Перейти к редактору
Пример списка: [‘Красный’, ‘Зеленый’, ‘Белый’, ‘Черный’, ‘Розовый’, ‘Желтый’]
Ожидаемый результат: [‘Зеленый’, ‘Белый’, ‘Черный’]
Нажмите меня, чтобы увидеть образец решения

13. Напишите программу на Python для создания трехмерного массива 3 * 4 * 6, каждый элемент которого *. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

14. Напишите программу на Python для печати номеров указанного списка после удаления из него четных чисел. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

15. Напишите программу на Python, чтобы перемешать и распечатать указанный список. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

16. Напишите программу на Python для генерации и распечатки списка первых и последних 5 элементов, где значения представляют собой квадрат чисел от 1 до 30 (оба включены). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

17. Напишите программу на Python для генерации и печати списка, за исключением первых 5 элементов, где значения представляют собой квадрат чисел от 1 до 30 (оба включены). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

18. Напишите программу на Python для генерации всех перестановок списка в Python. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

19. Напишите программу на Python, чтобы получить разницу между двумя списками. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

20. Напишите Python-программу доступа к индексу списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

21. Напишите программу на Python для преобразования списка символов в строку. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

22. Напишите программу на Python, чтобы найти индекс элемента в указанном списке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

23. Напишите программу на Python, чтобы сгладить мелкий список. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

24. Напишите программу на Python, чтобы добавить список ко второму списку. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

25. Напишите программу на Python для случайного выбора элемента из списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

26. Напишите программу на python, чтобы проверить, являются ли два списка циклически идентичными. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

27. Напишите программу на Python, чтобы найти второе наименьшее число в списке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

Читайте также:
Настройка обновления программ и драйверов

28. Напишите программу на Python, чтобы найти второе по величине число в списке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

29. Напишите программу на Python, чтобы получить уникальные значения из списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

30. Напишите программу на Python, чтобы получить частоту элементов в списке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

31. Напишите программу на Python для подсчета количества элементов в списке в указанном диапазоне. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

32. Напишите программу на Python, чтобы проверить, содержит ли список подсписок. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

33. Напишите программу на Python для генерации всех подсписков списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

34. Напишите программу на Python, используя метод Sieve of Eratosthenes для вычисления простых чисел до заданного числа. Перейти к редактору
Примечание: В математике сито Эратосфена (древнегреческое: κόσκινον Ἐρατοσθένους, kóskinon Eratosthénous), одно из множества сит с простыми числами, является простым древним алгоритмом для нахождения всех простых чисел вплоть до любого заданного предела.
Нажмите меня, чтобы увидеть образец решения

35. Напишите программу на Python для создания списка путем конкатенации заданного списка, диапазон которого варьируется от 1 до n. Перейти к редактору
Пример списка: [‘p’, ‘q’]
п = 5
Пример вывода: [‘p1’, ‘q1’, ‘p2’, ‘q2’, ‘p3’, ‘q3’, ‘p4’, ‘q4’, ‘p5’, ‘q5’]
Нажмите меня, чтобы увидеть образец решения

36. Напишите программу на Python, чтобы получить переменный уникальный идентификационный номер или строку. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

37. Напишите программу на Python для поиска общих элементов из двух списков. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

38. Напишите программу на Python, чтобы изменить положение каждого n-го значения с помощью (n + 1) -го в списке. Перейти к редактору
Пример списка: [0,1,2,3,4,5]
Ожидаемый результат: [1, 0, 3, 2, 5, 4]
Нажмите меня, чтобы увидеть образец решения

39. Напишите программу на Python для преобразования списка из нескольких целых чисел в одно целое число. Перейти к редактору
Пример списка: [11, 33, 50]
Ожидаемый результат: 113350
Нажмите меня, чтобы увидеть образец решения

40. Напишите программу на Python для разделения списка на основе первого символа слова. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

41. Напишите программу на Python для создания нескольких списков. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

42. Напишите программу на Python для поиска пропущенных и дополнительных значений в двух списках. Перейти к редактору
Пример данных: пропущенные значения во втором списке: b, a, c
Дополнительные значения во втором списке: г, ч
Нажмите меня, чтобы увидеть образец решения

43. Напишите программу на Python, чтобы разбить список на разные переменные. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

44. Напишите программу на Python для генерации групп из пяти последовательных чисел в списке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

45. Напишите программу на Python для преобразования пары значений в отсортированный уникальный массив. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

46. Напишите программу на Python, чтобы выбрать нечетные элементы списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

47. Напишите программу на Python для вставки элемента перед каждым элементом списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

48. Напишите программу на Python для печати вложенных списков (каждый список в новой строке), используя функцию print (). Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

50. Напишите программу на Python для сортировки списка вложенных словарей. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

51. Напишите программу на Python для разбиения списка на каждый N-й элемент. Перейти к редактору
Пример списка: [‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘i’, ‘j’, ‘k’, ‘l ‘,’ m ‘,’ n ‘]
Ожидаемый результат: [[‘a’, ‘d’, ‘g’, ‘j’, ‘m’], [‘b’, ‘e’, ‘h’, ‘k’, ‘n’], [‘ c ‘,’ f ‘,’ i ‘,’ l ‘]]
Нажмите меня, чтобы увидеть образец решения

52. Напишите программу на Python для вычисления сходства между двумя списками. Перейти к редактору
Пример данных: [«красный», «оранжевый», «зеленый», «синий», «белый»], [«черный», «желтый», «зеленый», «синий»]
Ожидаемый результат:
Color1-Color2: [‘белый’, ‘оранжевый’, ‘красный’]
Color2-Color1: [‘черный’, ‘желтый’]
Нажмите меня, чтобы увидеть образец решения

53. Напишите программу на Python для создания списка с бесконечными элементами. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

54. Напишите программу на Python для объединения элементов списка. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

55. Напишите программу на Python для удаления пар значений ключей из списка словарей. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

56. Напишите программу на Python для преобразования строки в список. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

57. Напишите программу на Python, чтобы проверить, все ли элементы списка равны заданной строке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

58. Напишите программу на Python, чтобы заменить последний элемент в списке другим списком. Перейти к редактору
Примеры данных: [1, 3, 5, 7, 9, 10], [2, 4, 6, 8]
Ожидаемый результат: [1, 3, 5, 7, 9, 2, 4, 6, 8]
Нажмите меня, чтобы увидеть образец решения

59. Напишите программу на Python, чтобы проверить, существует ли n-й элемент в данном списке. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

60. Напишите программу на Python, чтобы найти кортеж, наименьшее значение второго индекса из списка кортежей. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

61. Напишите программу на Python для создания списка пустых словарей. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

62. Напишите программу на Python для печати списка разделенных пробелами элементов. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

63. Напишите программу на Python для вставки заданной строки в начало всех элементов списка. Перейти к редактору
Пример списка: [1,2,3,4], строка: emp
Ожидаемый результат: [’emp1′, ’emp2′, ’emp3′, ’emp4′]
Нажмите меня, чтобы увидеть образец решения

64. Напишите программу на Python для одновременного выполнения двух списков. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

65. Напишите программу на Python для доступа к ключевым элементам словаря по индексу. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

66. Напишите программу на Python, чтобы найти список в списке списков, у которых сумма элементов самая высокая. Перейти к редактору
Примеры списков: [1,2,3], [4,5,6], [10,11,12], [7,8,9]
Ожидаемый результат: [10, 11, 12]
Нажмите меня, чтобы увидеть образец решения

67. Напишите программу на Python, чтобы найти все значения в списке больше указанного числа. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

68. Напишите программу на Python для расширения списка без добавления. Перейти к редактору
Пример данных: [10, 20, 30]
[40, 50, 60]
Ожидаемый результат: [40, 50, 60, 10, 20, 30]
Нажмите меня, чтобы увидеть образец решения

69. Напишите программу на Python для удаления дубликатов из списка списков. Перейти к редактору
Список образцов: [[10, 20], [40], [30, 56, 25], [10, 20], [33], [40]]
Новый список: [[10, 20], [30, 56, 25], [33], [40]]
Нажмите меня, чтобы увидеть образец решения

70. Напишите программу на Python, чтобы получить глубину словаря. Перейти к редактору
Нажмите меня, чтобы увидеть образец решения

71. Напишите программу на Python, чтобы проверить, все ли словари в списке пусты или нет. Перейти к редактору
Пример списка: [<>, <>, <>]
Возвращаемое значение: True
Пример списка: [, <>, <>]
Возвращаемое значение: Ложь
Нажмите меня, чтобы увидеть образец решения

Редактор кода Python:

Еще не все !

Не отправляйте решение вышеупомянутых упражнений здесь, если вы хотите внести вклад, перейдите на соответствующую страницу упражнения.

Источник: www.kodesource.top

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru