numbers = [10, 20, 30, 40, 50, 60, 70, 80]
# 2.2. Вывод различных срезов
print(numbers[:3]) # Первые три элемента: [10, 20, 30]
print(numbers[-3:]) # Последние три элемента: [60, 70, 80]
print(numbers[2:6]) # С индекса 2 по 5 включительно (правая граница не включается, поэтому 6): [30, 40, 50, 60]
print(numbers[::-1]) # Весь список в обратном порядке: [80, 70, 60, 50, 40, 30, 20, 10]
# 2.3. Создание копий списка
copy_via_slice = numbers[:]
copy_via_method = numbers.copy()
# 2.4. Изменение первого элемента копии и проверка оригинала
copy_via_slice[0] = 999
print("Оригинальный список:", numbers)
print("Измененная копия:", copy_via_slice)
Используйте код с осторожностью.
Объяснение результата (2.4):
При изменении копии оригинальный список не изменился. Срез numbers[:] и метод .copy() создают поверхностную копию (новые объекты списков в памяти). Поскольку исходный список содержал только неизменяемые элементы (числа), изменения в скопированном списке никак не влияют на оригинал.
Часть 3. Перебор и обработка (циклы)
python
# Исходный список для Части 3
my_list = [5, 12, 7, 3, 20, 8]
# 3.1. Вывод каждого элемента с его индексом через enumerate
print("Задание 3.1:")
for index, element in enumerate(my_list):
print(f"Индекс {index}: элемент {element}")
# 3.2. Поиск суммы всех элементов без sum()
total_sum = 0
for element in my_list:
total_sum += element
print(f"\n3.2. Сумма элементов: {total_sum}")
# 3.3. Поиск максимального и минимального элементов без max()/min()
max_elem = my_list[0]
min_elem = my_list[0]
for element in my_list:
if element > max_elem:
max_elem = element
if element < min_elem:
min_elem = element
print(f"3.3. Максимум: {max_elem}, Минимум: {min_elem}")
# 3.4. Создание нового списка только из чётных чисел
even_list = []
for element in my_list:
if element % 2 == 0:
even_list.append(element)
print(f"3.4. Список чётных чисел: {even_list}")
# 3.5. Подсчёт элементов, которые больше 5
count_greater_than_5 = 0
for element in my_list:
if element > 5:
count_greater_than_5 += 1
print(f"3.5. Количество элементов больше 5: {count_greater_than_5}")