Список (list) - это тип данных, представляющий собой упорядоченный набор элементов.
Элементы одно списка должны иметь одинаковый тип. Например, список строк, список целых чисел.
Примеры списков:
a = ["Андрей", "Вера", "Даша", "Коля", "Юра"]
b = [17, 409, 88]
a = ["Андрей", "Вера", "Даша", "Коля", "Юра"]
С каждым элементом списка можно работать отдельно:
Каждый элемент списка имеет свой номер (индекс). Нумерация элементов начинается с нуля:
a = ["Андрей", "Вера", "Даша", "Коля", "Юра"]
print(a[2])
Чтобы перебрать все элементы списка используется цикл:
a = ["Андрей", "Вера", "Даша", "Коля", "Юра"]
for i in range(5):
print("Привет,", a[i])
Способы создания списков
1) Перечислением всех элементов:
b = [17, 409, 88]
Можно создать пустой список:
a = []
2) С помощью генератора списка:
a = []*5
Получится список, состоящий из пяти нулей: [0, 0, 0, 0, 0].
a = [ i for i in range(10) ]
Получится список [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
a = [ i*i for i in range(10) ]
Получится список [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
3) Путём ввода элементов с клавиатуры (каждый элемент с новой строки):
a = [0]*5
for i in range(5):
print("a[", i, "]= ", end = "")
a[i] = int(input())
4) Путём ввода элементов с клавиатуры (все элементы в одной строке через пробел). Для этого используется метод a.split(), возвращающий список строк, которые получатся, если исходную строку разрезать на части по пробелам:
a = [0]*5
s = input() # человек вводит строку "1 2 3"
a = s.split()
print(a)
Вывод: ['1', '2', '3']
Способы вывода списков
1) С помощью функции print():
b = [17, 409, 88]
print(b)
Вывод: [17, 409, 88]
2) Вывод каждого элемента списка по-отдельности:
a = ["Андрей", "Вера", "Даша", "Коля", "Юра"]
for i in range(5):
print(a[i])
4) Вывод элементов списка без обращения к индексам элементов:
fruits = ["Яблоко", "Банан", "Груша"]
for x in fruits:
print(x, end = " ")
3) Вывод каждого элемента списка по-отдельности в одной строке:
a = ["Андрей", "Вера", "Даша", "Коля", "Юра"]
for i in range(5):
print(a[i], end = " ")
Работа со списком
1) Элементы списка можно изменять:
a = [1, 2, 3, 4, 5, 6]
for i in range(6):
if a[i] % 2 == 0:
a[i] = 0
print(a)
Вывод: [1, 0, 3, 0, 5, 0]
2) Можно добавлять элементы в конец списка. Для этого используется метод a.append(x):
a = [1, 2, 3] a.append(4)
print(a)
Вывод: [1, 2, 3, 4]
3) Можно расширять список, добавляя в его конец элементы другого списка. Для этого используется метод a.extend(b):
a = [1, 2, 3]
b = [4, 5] a.extend(b) print(a)
Вывод: [1, 2, 3, 4, 5]
4) Списки можно копировать:
a = [1, 2, 3]
b = a
print(b)
5) Функция нахождения длины списка len(a):
a = ["Яблоко", "Банан", "Груша"]
x = len(a)
print(x)
Вывод: 3
6) Заполнение списка случайными элементами:
from random import randint
x = 7
a = [0]*x
for i in range(x):
a[i] = randint(0,100)
7) Перестановка элементов списка в обратном порядке. Метод a.reverse():
a = [0, 1, 2, 3, 4, 5]
a.reverse()
print(a)
Вывод: [5, 4, 3, 2, 1, 0]
8) Сортировка списка. Функция sorted(a):
По возрастанию:
animals = ["кот", "еж", "собака", "барсук"]
animals = sorted(animals)
print(animals)
По убыванию:
a = [5, 65, 14, 700, 8]
a = sorted(a, reverse = True) print(a)
Вывод: ['барсук', 'еж', 'кот', 'собака']
Вывод: [700, 65, 14, 8, 5]
Задачи:
Создать список своих любимых фильмов. Вывести список тремя способами: а) в строчку; б) в столбик; в) в строчку через запятую.
Ввести с клавиатуры список фамилий писателей. Отсортировать список в алфавитном порядке и вывести его.
Создать список из пяти элементов. Заполнить его случайными числами. Вывести этот список. Найти и вывести сумму его элементов.
Создать список из десяти элементов. Заполнить его случайными числами. Вывести этот список. Вывести наибольший элемент списка.
!
Задачи:
Создать список из десяти элементов. Заполнить его случайными числами. Заменить все нечетные числа нулями. Вывести исходный и получившийся списки.
Заполнить массив из 10 элементов случайными числами в интервале [-100,100] и переставить элементы так, чтобы все положительные элементы стояли в начала массива, а все отрицательные и нули – в конце. Пример: исходный массив: 20 -90 15 -34 10 0; результат: 20 15 10 -90 -34 0.
Заполнить массив а случайными числами, отобрать в массив b все числа, меньшие пяти. Вывести оба массива.
!
Домашнее задание
!
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.