while <выражение истинно>:
<осуществление операций>
else:
<обработается только при несрабатывании инструкции «break»>
for <перебор итерируемого объекта>:
<осуществление операций над каждым элементом>
else:
<обработается только при несрабатывании инструкции «break»>
На вход функция more_than_five(lst) получает список из целых чисел.
Результатом работы функции должен стать новый список, в котором содержатся только те числа, которые больше 5 по модулю.
def more_than_five(lst):
new_lst = []
for number in lst:
if abs(number) > 5:
new_lst.append(number)
return new_lst
# Тесты
print(more_than_five([-11, 4, -2, 90, 400, 0, -5]))
print(more_than_five([-2, 2, 3, 4, 0, -1]))
print(more_than_five([70, -900, 41, 0]))
[-11, 90, 400]
[]
[70, -900, 41]
Евгению предоставили строку, состоящую из русских букв разных регистров, и попросили очистить ее от заглавных литер.
Как ему показалось, он написал верный код, но результат совсем не порадовал.
Ниже представлен пример работы «чистильщика строк», которому срочно требуется ваша помощь.
Пример – IDE
----
letters = 'ЫгВЫоЯСремДШНККАыкЩЙФа'
for letter in letters:
____if letter.upper() = letters:
________letters.replace(letter, '')
print(letters)
letters = 'ЫгВЫоЯСремДШНККАыкЩЙФа'
clean_string = ''
for letter in letters:
if not letter.isupper():
clean_string += letter
letters = clean_string
print(letters)
горемыка
Анна решила представить некую таблицу с заглавными и строчными буквами русского алфавита в красивом формате.
Об этом ее попросили англоязычные друзья из социальных сетей.
Недолго думая девушка создала скрипт, который выполнял подобную операцию.
Результат работы программы продемонстрирован ниже.
Сможете повторить (в строках с галочками - их 27 штук, чтобы вам не пришлось долго считать)? Для идентичности результатов примените любой моноширинный шрифт (в котором все символы имеют одинаковую ширину).
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| А а || К к || Х х |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Б б || Л л || Ц ц |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| В в || М м || Ч ч |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Г г || Н н || Ш ш |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Д д || О о || Щ щ |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Е е || П п || Ъ ъ |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Ё ё || Р р || Ы ы |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Ж ж || С с || Ь ь |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| З з || Т т || Э э |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| И и || У у || Ю ю |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Й й || Ф ф || Я я |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
rus_lower = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя'
for position in range(11):
print('^' * 27)
for letter in rus_lower:
if rus_lower.index(letter) % 11 == position:
print('| ', letter.upper(), letter, ' |', end='')
print()
print('^' * 27)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| А а || К к || Х х |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Б б || Л л || Ц ц |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| В в || М м || Ч ч |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Г г || Н н || Ш ш |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Д д || О о || Щ щ |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Е е || П п || Ъ ъ |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Ё ё || Р р || Ы ы |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Ж ж || С с || Ь ь |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| З з || Т т || Э э |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| И и || У у || Ю ю |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
| Й й || Ф ф || Я я |
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Для идентификации своего круга проверенных лиц будущий тайный агент (ведь все о чем-то мечтают)
Максим решил пускать на свою страничку в Интернете только тех, чьи никнеймы есть в его секретном списке.
Он уверен в своих людях (особенно в том, что они по глупости не расскажут никому своё секретное прозвище),
как и в том, что имена товарищей невозможно подобрать случайно.
К слову, вот этот список: Мавпродош, Лорнектиф, Древерол, Фиригарпиг, Клодобродыч.
По мере увеличения круга знакомых Максим, естественно, дополнит данный список.
Ваша задача такова: повторите код, который будет спрашивать у пользователя его ник и
либо пускать на сайт (выведется сообщение «Ты – свой. Приветствую, любезный {НИК_ПОСЕТИТЕЛЯ}!»),
либо нет (в этом случае будет такой текст: «Тут ничего нет. Еще есть вопросы?».
Фактически, будущий супергерой решил поиздеваться над теми, кого нет в его удивительном перечне, так как им будет показываться это сообщение постоянно.
Очень коварный замысел!).
Для проверки прозвищ посетителей используйте встроенную функцию input().
nick = input()
secret_list = ['Мавпродош', 'Лорнектиф', 'Древерол', 'Фиригарпиг', 'Клодобродыч']
while nick not in secret_list:
print('Тут ничего нет. Еще есть вопросы?')
nick = input()
else:
print(f'Ты – свой. Приветствую, любезный {nick}!')
>Агент007
Тут ничего нет. Еще есть вопросы?
>Нету(
Тут ничего нет. Еще есть вопросы?
>ЕСТЬ!!!
Тут ничего нет. Еще есть вопросы?
>Мавпродош
Ты – свой. Приветствую, любезный Мавпродош!
Валентина прогуляла лекцию по математике.
Преподаватель решил подшутить над нерадивой студенткой и
попросил ее на практическом занятии перечислить все положительные делители некоторых целых чисел.
Для несложных примеров студентка быстро нашла решения (для числа 6 это: 1, 2, 3, 6; а для числа 16 это: 1, 2, 4, 8, 16), но этим все не закончилось.
На домашнее задание ей дали варианты посложнее: 23436, 190187200, 380457890232.
Решить такое вручную, как вы понимаете, практически нереально.
Вот Валентина и обратилась к вам за помощью.
Помогите ей (при помощи функции all_divisors(number)).
Постарайтесь найти самое оптимальное решение.
Результат представьте в виде списка (не забудьте отсортировать по возрастанию).
def all_divisors(number):
lst = [1, number]
for i in range(2, 1 + int(number ** 0.5)):
if number % i == 0:
lst.extend({number // i, i})
return sorted(lst)
# Тесты
print(all_divisors(23_436))
print(all_divisors(190_187_200))
print(all_divisors(380_457_890_232))
[1, 2, 3, 4, 6, 7, 9, 12, 14, 18, 21, 27, 28, 31, 36, 42, 54, 62, 63, 84, 93, 108, 124, 126, 186, 189, 217, 252, 279, 372, 378, 434, 558, 651, 756, 837, 868, 1116, 1302, 1674, 1953, 2604, 3348, 3906, 5859, 7812, 11718, 23436]
[1, 2, 4, 5, 7, 8, 10, 14, 16, 20, 25, 28, 32, 35, 40, 50, 56, 64, 70, 80, 100, 112, 140, 160, 175, 200, 224, 280, 320, 350, 400, 448, 560, 700, 800, 1120, 1400, 1600, 2240, 2800, 5600, 11200, 16981, 33962, 67924, 84905, 118867, 135848, 169810, 237734, 271696, 339620, 424525, 475468, 543392, 594335, 679240, 849050, 950936, 1086784, 1188670, 1358480, 1698100, 1901872, 2377340, 2716960, 2971675, 3396200, 3803744, 4754680, 5433920, 5943350, 6792400, 7607488, 9509360, 11886700, 13584800, 19018720, 23773400, 27169600, 38037440, 47546800, 95093600, 190187200]
[1, 2, 3, 4, 6, 7, 8, 12, 14, 17, 21, 24, 28, 34, 42, 51, 56, 68, 84, 102, 119, 136, 168, 204, 238, 289, 357, 408, 476, 578, 714, 867, 952, 1156, 1428, 1734, 2023, 2312, 2856, 3468, 4046, 6069, 6936, 8092, 12138, 16184, 24276, 48552, 7836091, 15672182, 23508273, 31344364, 47016546, 54852637, 62688728, 94033092, 109705274, 133213547, 164557911, 188066184, 219410548, 266427094, 329115822, 399640641, 438821096, 532854188, 658231644, 799281282, 932494829, 1065708376, 1316463288, 1598562564, 1864989658, 2264630299, 2797484487, 3197125128, 3729979316, 4529260598, 5594968974, 6793890897, 7459958632, 9058521196, 11189937948, 13587781794, 15852412093, 18117042392, 22379875896, 27175563588, 31704824186, 47557236279, 54351127176, 63409648372, 95114472558, 126819296744, 190228945116, 380457890232]