PYTHON_JOB_INTERVIEW Telegram 1142
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Хитрый способ изменить поведение цикла for — без изменения самого цикла

Можно ли сделать так, чтобы весь Python-код, использующий for x in ..., внезапно начал вести себя иначе — без изменения самого цикла?

Ответ: да, если переопределить поведение итератора. На экране показа — трюк, где обычный список «врет» в цикле и выдает неожиданные значения.

Трюк можно использовать и с dict, set и кастомными генераторами. Особенно удобно в юнит-тестах или визуализациях.


class FakeList(list):
def __iter__(self):
return iter(["test", "mock", "override"])

data = FakeList([1, 2, 3])
for x in data:
print(x) # выведет: test, mock, override


https://youtube.com/shorts/QhZtRx1ukoc?feature=share
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍8🔥2🥰1



tgoop.com/python_job_interview/1142
Create:
Last Update:

🖥 Хитрый способ изменить поведение цикла for — без изменения самого цикла

Можно ли сделать так, чтобы весь Python-код, использующий for x in ..., внезапно начал вести себя иначе — без изменения самого цикла?

Ответ: да, если переопределить поведение итератора. На экране показа — трюк, где обычный список «врет» в цикле и выдает неожиданные значения.

Трюк можно использовать и с dict, set и кастомными генераторами. Особенно удобно в юнит-тестах или визуализациях.


class FakeList(list):
def __iter__(self):
return iter(["test", "mock", "override"])

data = FakeList([1, 2, 3])
for x in data:
print(x) # выведет: test, mock, override


https://youtube.com/shorts/QhZtRx1ukoc?feature=share

BY Python вопросы с собеседований


Share with your friend now:
tgoop.com/python_job_interview/1142

View MORE
Open in Telegram


Telegram News

Date: |

Image: Telegram. Add up to 50 administrators During the meeting with TSE Minister Edson Fachin, Perekopsky also mentioned the TSE channel on the platform as one of the firm's key success stories. Launched as part of the company's commitments to tackle the spread of fake news in Brazil, the verified channel has attracted more than 184,000 members in less than a month. Telegram channels enable users to broadcast messages to multiple users simultaneously. Like on social media, users need to subscribe to your channel to get access to your content published by one or more administrators. The channel also called on people to turn out for illegal assemblies and listed the things that participants should bring along with them, showing prior planning was in the works for riots. The messages also incited people to hurl toxic gas bombs at police and MTR stations, he added.
from us


Telegram Python вопросы с собеседований
FROM American