Python: задачки и вопросы
7.54K subscribers
1.25K photos
1 video
1 file
111 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
🧩 Исполнится ли код без ошибок?
Anonymous Quiz
73%
Да
27%
Нет
Из документации Python:

'𝙰𝚗 𝚎𝚡𝚙𝚛𝚎𝚜𝚜𝚒𝚘𝚗 𝚒𝚗 𝚙𝚊𝚛𝚎𝚗𝚝𝚑𝚎𝚜𝚎𝚜, 𝚜𝚚𝚞𝚊𝚛𝚎 𝚋𝚛𝚊𝚌𝚔𝚎𝚝𝚜 𝚘𝚛 𝚌𝚞𝚛𝚕𝚢 𝚋𝚛𝚊𝚌𝚎𝚜 𝚌𝚊𝚗 𝚋𝚎 𝚜𝚙𝚕𝚒𝚝 𝚘𝚟𝚎𝚛 𝚖𝚘𝚛𝚎 𝚝𝚑𝚊𝚗 𝚘𝚗𝚎 𝚙𝚑𝚢𝚜𝚒𝚌𝚊𝚕 𝚕𝚒𝚗𝚎 𝚠𝚒𝚝𝚑𝚘𝚞𝚝 𝚞𝚜𝚒𝚗𝚐 𝚋𝚊𝚌𝚔𝚜𝚕𝚊𝚜𝚑𝚎𝚜'.


«Выражение в скобках может быть разделено на несколько строк без использования символа обратного слеша»

В данном коде Python автоматически интерпретирует переносы строк внутри скобок как продолжение выражения. В итоге вычисляется арифметическое выражение: 𝟷 + 𝟸 + 𝟹 + 𝟺 = 𝟷𝟶.
👍1
🧩 Что выведет код?
Anonymous Quiz
83%
True
4%
False
3%
7
10%
Error
В Python можно использовать множественные операторы сравнения в одной цепочке. Выражение «𝟻 < 𝚡 < 𝟷𝟶 < 𝟿𝟿𝟿» эквивалентно «(𝟻 < 𝚡) 𝚊𝚗𝚍 (𝚡 < 𝟷𝟶) 𝚊𝚗𝚍 (𝟷𝟶 < 𝟿𝟿𝟿)».

Поскольку 𝚡 = 𝟽:
— 𝟻 < 𝟽 = 𝚃𝚛𝚞𝚎;
− 𝟽 < 𝟷𝟶 = 𝚃𝚛𝚞𝚎;
− 𝟷𝟶 < 𝟿𝟿𝟿 = 𝚃𝚛𝚞𝚎.

Все условия выполняются, поэтому результат выражения 𝚃𝚛𝚞𝚎.

В Python цепочки сравнений выполняются слева направо и объединяются оператором «𝚊𝚗𝚍». Если любое из сравнений возвращает 𝙵𝚊𝚕𝚜𝚎, то и вся цепочка возвращает 𝙵𝚊𝚕𝚜𝚎.
3
🧩 Что выведет код?
Anonymous Quiz
59%
A fitting tweet
27%
Went over by 80
2%
None
11%
Error
Код использует оператор присваивания выражения (𝚠𝚊𝚕𝚛𝚞𝚜 𝚘𝚙𝚎𝚛𝚊𝚝𝚘𝚛) `:=`. Этот оператор позволяет присваивать значение переменной в рамках выражения.

Рассмотрим выполнение кода пошагово:

🔘 `𝚝𝚠𝚎𝚎𝚝_𝚕𝚒𝚖𝚒𝚝 = 𝟸𝟾𝟶` − устанавливается лимит символов для твита
🔘 `𝚝𝚠𝚎𝚎𝚝_𝚜𝚝𝚛𝚒𝚗𝚐 = "𝙱𝚕𝚊𝚑" ∗ 𝟻𝟶` − создается строка путем повторения строки «𝙱𝚕𝚊𝚑» 𝟻𝟶 раз, что дает строку длиной 𝟸𝟶𝟶 символов
🔘 В условии `𝚒𝚏 𝚍𝚒𝚏𝚏 := 𝚝𝚠𝚎𝚎𝚝_𝚕𝚒𝚖𝚒𝚝 − 𝚕𝚎𝚗(𝚝𝚠𝚎𝚎𝚝_𝚜𝚝𝚛𝚒𝚗𝚐) >= 𝟶:` происходит следующее:
🔘 Вычисляется `𝚝𝚠𝚎𝚎𝚝_𝚕𝚒𝚖𝚒𝚝 − 𝚕𝚎𝚗(𝚝𝚠𝚎𝚎𝚝_𝚜𝚝𝚛𝚒𝚗𝚐)` = 𝟸𝟾𝟶 − 𝟸𝟶𝟶 = 𝟾𝟶
🔘 Проверяется условие `𝟾𝟶 >= 𝟶`, которое возвращает `𝚃𝚛𝚞𝚎`
🔘 Оператор `:=` присваивает результат этого выражения (𝚃𝚛𝚞𝚎) переменной `𝚍𝚒𝚏𝚏`
🔘 Поскольку условие истинно, выполняется блок `𝚒𝚏`
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1