Python: задачки и вопросы
7.51K subscribers
1.28K photos
2 videos
1 file
118 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Что выведет код?
Anonymous Quiz
48%
a:b
21%
:a
11%
a
5%
ab
15%
Error
👍1
В пятницу не стал жестить, большинство справились с задачей.

Разбор по шагам:

1️⃣Определяется функция‑генератор:
𝚍𝚎𝚏 𝚏():
𝚢𝚒𝚎𝚕𝚍 "𝚊"
𝚢𝚒𝚎𝚕𝚍 "𝚋"

2️⃣Вызов:
𝚜 = ":".𝚓𝚘𝚒𝚗(𝚏()) — здесь берётся встроенный метод 𝚓𝚘𝚒𝚗, разделителем служит строка ":", а аргументом — генератор.​
Генератор по очереди выдаёт "a", потом "b".

3️⃣Метод join работает так:
— «Собери все строки из генератора, вставь между ними разделитель»​
— Результат — строка "a:b".

4️⃣Вывод:
𝚙𝚛𝚒𝚗𝚝(𝚜) → 'a:b'​

Почему это важно
🔘join очень полезен: работает с любым итерируемым объектом: списком, кортежем, даже генератором.
🔘Передавая генератор, можно собирать строки «на лету» без лишней памяти и промежуточных списков.
🔘Если передать нестроковые элементы, будет TypeError, но для генератора, выдающего строки — всё корректно.
Please open Telegram to view this post
VIEW IN TELEGRAM
5