Перейти к основному содержанию
EDU-MMCS
  • В начало
  • Дополнительно
Вы используете гостевой доступ
Вход
В начало
  1. Prog_2
  2. Лабораторная работа №5. Списки

Лабораторная работа №5. Списки

Требуемые условия завершения
Открыто с: четверг, 10 октября 2024, 00:00
Срок сдачи: четверг, 17 октября 2024, 00:00

Массивы (списки) в Python — это определенное количество элементов одного типа, которые имеют общее имя, и каждый элемент имеет свой индекс — порядковый номер. Часто для работы с массивами используются списки.

Список (list) — это структура данных для хранения объектов различных типов. Списки являются упорядоченными последовательностями, которые состоят из различных типов данных, заключающихся в квадратные скобки [] и отделяющиеся друг от друга с помощью запятой.

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

Создать список можно несколькими способами

  1. Получение списка через присваивание конкретных значений

Так выглядит в коде Руthon пустой список:

l=[]  # Пустой список 
#Примеры создания списков  со значениями: 
l=[5,75,-4, 7, -S1]#  список  целых  чисел 
l=[1.13,5.34,12.63,4.6,34.0,12.8]# список из вещественных  чисел 
l=["оля", "Владимир", "Михаил", "Дарья"]#  список из строк 
l=["Москва","Иванов", 12, 124]      #   смешанный список 
l=[[0,  0,  0],  [1,  0,  11],  [1,  1, 17]]  # список, состоящий из списков 
l=['5',   'pt',    ['python'],  2] #   список из разных значений и списка

Списки можно складывать (конкатенировать) с помощью знака «+»:

l=[1,3]1+[4,23]+[5] 
print('l=[1,3]+[4,23]+[5] =',l)

Результат: l=[1,3]+[4,23]+[5] = [1, 3, 4, 23, 5]

  1. Создание списка при помощи функции Split()

Используя функцию split в Python можно получить из строки список.

stroka="Здравствуй, Дедушка Мороз"   #stroka  -  строка 
lst=stroka.split(",")  #lst-список 
print('stroka = ', stroka) 
print ('lst=stroka.split(","):',lst)

Результат:

stroka = Здравствуй, Дедушка Мороз

lst=stroka.split(","): ['Здравствуй', 'Дедушка Mopoз']

  1. Генераторы списков

В Python создать список можно также при помощи генераторов.

Первый способ

Сложение одинаковых списков заменяется умножением: Список из 10 элементов, заполненный единицами

l =[1]*10

Второй способ

Пример 1

l=[i for i in range(10)]

Пример 2

c = [c * 3 for c in 'list'] 
print(с) #['lll','iii','sss','ttt']

Примеры использования генераторов списка

Пример 1

Заполнить список квадратами чисел от 0 до 9, используя генератор списка.

Решение:

l = [i*i for i in range(10)]

Пример 2

Заполнить список числами, где каждое последующее число больше на 2.

l = [2*i+1 for i in range(10)]

Модуль random предоставляет функции для генерации случайных чисел, букв, случайного выбора элементов последовательности.

random.randint(A, В) - случайное целое число N, А <= N <= B

random.random() - случайное число от 0 до 1.

Случайные числа в списке:

10 чисел, сгенерированных случайным образом в диапазоне (10,80)

from random import randint 
l = [randint(10,80) for x in range(10)]

10 чисел, сгенерированных случайным образом в диапазоне (0,1)

import random
l = [rrandom() for i in range(10)]
  1. Ввод списка (массива) в языке Python

Для ввода элементов списка используется цикл for и команда range():

for i in range(N):
    x[i] = int(input())

Более простой вариант ввода списка:

x = [int(input()) for i in range(N)]
  1. Вывод списка (массива)

Вывод целого списка (массива):

print(L)

Поэлементный вывод списка (массива)

for i in range(N):
    print(L[i], end=" ")

Задания для самостоятельной работы

  1. Из массива Х длиной n, среди элементов которого есть положительные, отрицательные и равные нулю, сформировать новый массив У, взяв в него только те элементы из Х, которые больше по модулю заданного числа М. Вывести на экран число М, данный и полученные массивы.
  2. В массиве целых чисел все отрицательные элементы заменить на положительные. Вывести исходный массив и полученный.
  3. Найдите количество положительных и количество отрицательных чисел в списке.
  4. Выведите значение наименьшего нечетного элемента списка, а если в списке нет нечетных элементов - выведите число 0.
  5. Выведите элементы данного списка в обратном порядке, не изменяя сам список.
  6. Напишите функцию, которая принимает два списка и возвращает новый список, в котором каждый элемент представляет сумму соответствующих элементов обоих списков.
Служба поддержки сайта
Вы используете гостевой доступ (Вход)
Сводка хранения данных
Скачать мобильное приложение Яндекс.Метрика
На платформе Moodle