Метод
.append()
используется для добавления элемента в конец списка. Пример: my_list = [1, 2, 3]
my_list.append(4)
print(my_list) # Вывод: [1, 2, 3, 4]
Можно реализовать через конкатенацию (склеивание) списков:
my_list = [1, 2, 3]
my_list += [4]
print(my_list) # Вывод: [1, 2, 3, 4]
Метод
.reverse()
изменяет порядок элементов в списке на обратный. Пример: my_list = [1, 2, 3, 4]
my_list.reverse()
print(my_list) # Вывод: [4, 3, 2, 1]
Можно записать по другому через срез:
my_list = [1, 2, 3, 4]
my_list = my_list[::-1]
print(my_list) # Вывод: [4, 3, 2, 1]
Метод
.count()
возвращает количество вхождений заданного элемента в список. Пример:my_list = [1, 2, 2, 3, 4, 2]
count_of_twos = my_list.count(2)
print(count_of_twos) # Вывод: 3
Метод .
remove()
удаляет первое вхождение указанного элемента из списка. Пример:my_list = [1, 2, 3, 2, 4]
my_list.remove(2) # первая найденная двойка
print(my_list) # Вывод: [1, 3, 2, 4]
Можно удалить элемент через его индекс используя
del
:my_list = [1, 2, 3, 2, 4]
del my_list[1] # индекс удаляемого элемента
print(my_list) # Вывод: [1, 3, 2, 4]
Метод
.index()
возвращает индекс первого вхождения заданного элемента в списке. Пример:my_list = [1, 2, 3, 2, 4]
index_of_two = my_list.index(2)
print(index_of_two) # Вывод: 1
Метод
.sort()
сортирует элементы списка по возрастанию (по умолчанию) или в обратном порядке, если передан аргумент reverse=True
. Пример:my_list = [4, 1, 3, 2]
my_list.sort()
print(my_list) # Вывод: [1, 2, 3, 4]
my_list.sort(reverse=True)
print(my_list) # Вывод: [4, 3, 2, 1]
Скажу честно я не любитель этого метода, считаю, что удобнее будет использовать функцию
sorted()
:my_list = [4, 1, 3, 2]
my_list = sorted(my_list)
print(my_list) # Вывод: [1, 2, 3, 4]
my_list = sorted(my_list, reverse=True)
print(my_list) # Вывод: [4, 3, 2, 1]
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
В канале одного из них вы можете прочитать о том, почему я люблю информатику.
Репетитор по математике
Репетитор по русскому языку
Репетитор по химии
Репетитор по биологии
Репетитор по физике
Можете поучаствовать в другом опросе, если ведёте канал.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Задача 23 номера с сайта kompege.ru автор: М. Ишимов
Интересная, но не очень сложная, рекомендую ознакомиться!
Код решения:
def F(a, b, flag):
if a >= b:
return a == b
if flag == "B":
return F(a + 2, b, "A") + F(a * 3, b, "C")
return F(a+2, b, "A") + F(a**2, b, "B") + F(a*3, b, "C")
print(F(2, 64, 0))
Please open Telegram to view this post
VIEW IN TELEGRAM
Круто! Да это же круто!
Я реально при*****
Это было не просто смело. Это было п***** как смело
Сомнительно, но ОКЭЙ
Мне вообше это не интересно
Я уважаю, что они делают, но я этого не понимаю
Блин, я заплакал
Какая разница? Вот какая разница?
Конечно мы все виноваты в этом п******
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Задача 8 номера с сайта kompege.ru автор: М. Ишимов
Простенькая и нативно понятная задачка базового уровня, зато удобно и наглядно видно, как работать с ней через itertools.
Код решения:
import itertools
count = 0
for s in itertools.product('01234567', repeat=5):
slovo = ''.join(s)
if slovo[0] != '0':
if slovo[0] not in '1357':
if slovo[-1] not in '26':
if slovo.count('7') <= 2:
count += 1
print(count)
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Дублирую условие для вашего удобства, переносите в
Михаил составляет 7-значные числа, используя цифры 2, 3, 0, 5, 9, 7, 8.
Каждую цифру нужно использовать ровно 1 раз.
Число не может содержать четные цифры подряд и должно заканчиваться на 7.
Сколько различных чисел может сформировать Михаил?
Правильное решение опубликую сегодня вечером в комментариях, а пока что предлагаю выбрать правильный ответ
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Срезы в Python представляют собой мощный механизм для извлечения подстрок, подсписков или любых других подпоследовательностей из итерируемых объектов.
Синтаксис срезов включает в себя указание начального и конечного индексов, а также опциональный шаг (step):
срез = объект[начальный_индекс:конечный_индекс:шаг]
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# Извлечение подсписка с индексами 2-5 (не включая 5)
subset1 = my_list[2:5]
print(subset1) # Вывод: [3, 4, 5]
my_string = "Hello, World!"
# Извлечение подстроки с индексами 7-12 (не включая 12)
substring1 = my_string[7:12]
print(substring1) # Вывод: "World"
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
subset = my_list[2:5]
print(subset) # Вывод: [3, 4, 5]
Здесь мы извлекаем подсписок, начиная с индекса 2 и заканчивая индексом 5 (не включая). Это полезно, когда нам нужна определенная часть списка.
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
subset = my_list[1::2]
print(subset) # Вывод: [2, 4, 6, 8, 10]
В этом примере мы извлекаем каждый второй элемент, начиная с индекса 1, то есть все нечетные ИНДЕКСЫ.
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
reverse_list = my_list[::-1]
print(reverse_list) # Вывод: [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
Использование среза с отрицательным шагом позволяет нам легко создать список в обратном порядке.
my_string = "Hello, World!"
substring = my_string[7:12]
print(substring) # Вывод: "World"
В данном случае, мы извлекаем подстроку, начиная с индекса 7 и заканчивая индексом 12 (не включая). Это полезно для работы с текстовыми данными.
my_string = "Hello, World!"
substring = my_string[::2]
print(substring) # Вывод: "Hlo ol!"
Использование среза с шагом 2 помогает нам извлекать каждый второй символ из строки.
my_string = "Hello, World!"
reverse_string = my_string[::-1]
print(reverse_string) # Вывод: "!dlroW ,olleH"
Также, как и в случае с списками, срез с отрицательным шагом позволяет легко получить строку в обратном порядке.
Использование срезов делает код более эффективным и читаемым. Практикуйтесь в их применении, и вы обнаружите, насколько они улучшают ваши навыки работы с данными в Python.
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Сложная задачка 5 номера с сайта kompege.ru, на примере этой задачи мы можем увидеть где нам могут пригодиться генераторы списков. А еще в конце разбора опубликовал более универсальный способ решения!
for n in range(2, 10000):
s = bin(n)[2:]
chet1 = [x for x in s[1::2] if x == '1']
nechet0 = [x for x in s[0::2] if x == '0']
r = abs(len(chet1) - len(nechet0))
if r == 5:
print(n)
break
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Дублирую условие для вашего удобства, переносите в
КЕГЭ № 1515 (Уровень: Средний)
Автомат обрабатывает натуральное число N по следующему алгоритму:
1. Строится двоичная запись числа N.
2. Запись «переворачивается», то есть читается справа налево.
Если при этом появляются ведущие нули, они отбрасываются.
3. Полученное число переводится в десятичную запись и выводится на экран.
Какое наименьшее число, превышающее 1000, после обработки автоматом даёт результат 29?
Правильное решение опубликую сегодня вечером в комментариях, а пока что предлагаю выбрать правильный ответ
Информатика ЕГЭ | itpy
Please open Telegram to view this post
VIEW IN TELEGRAM
Я постоянно обучаюсь, дабы быть примером для своих студентов, на данный момент могу похвастаться несколькими весомыми дипломами:
📈 Эти и другие дипломы, а также отзывы моих учеников и их родителей вы можете найти в профиле на Авито.
Поддержать автора донатом
Please open Telegram to view this post
VIEW IN TELEGRAM