Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /usr/bin/env python3
- class Source:
- def __init__(self, string):
- self.string = string
- def __iter__(self):
- # выражение со звездочкой удваивает каждый символ; выражение в
- # круглых скобках возвращает итератор, который и используется
- # в итерационных контекстах: конструкторах коллекций, функциях
- # для работы с последовательностями, генераторах коллекций,
- # операции с in, циклах.
- return (c * 2 for c in self.string)
- src = Source("Foobar")
- # list(src) → ['FF', 'oo', 'oo', 'bb', 'aa', 'rr']
- # any(src) → True
- # list(map(str.upper, src)) → ['FF', 'OO', 'OO', 'BB', 'AA', 'RR']
- # {i for i in src} → {'oo', 'aa', 'rr', 'FF', 'bb'}
- # "FF" in src → True
- # 'F' in src → False
- # for i in src: print(i, end = ' ') → FF oo oo bb aa rr
- # (a, b, c, d, f, g) = src; print(a, b, c, d, f, g) → FF oo oo bb aa r
Add Comment
Please, Sign In to add comment