объекты генераторов Создания
, Если Вы пишете
x=(n for n in foo if bar(n))
, можно вынуть генератор и присвоить его x. Теперь это означает, что можно сделать
for n in x:
, преимущество этого состоит в том, что Вам не нужно промежуточное устройство хранения данных, в котором Вы нуждались бы, если бы Вы сделали
x = [n for n in foo if bar(n)]
В некоторых случаях, это может привести к значительной скорости.
можно добавить многих если операторы до конца генератора, в основном копируя вложенный для циклов:
>>> n = ((a,b) for a in range(0,2) for b in range(4,6))
>>> for i in n:
... print i
(0, 4)
(0, 5)
(1, 4)
(1, 5)
Вы можете сделать это без регулярных выражений, используя
" Это строка ".split (" ") .join (" & nbsp; ");