l**********n 发帖数: 8443 | 1 scala和python都有yield. scala的yield和python的yield有区别吗? |
e***i 发帖数: 231 | 2 scala的yield相当于map或flatmap,产生类型跟从for comprehension的第一个
python的yield给一个generator,类似linkedlist的iterator,不占内存,用到才产生
和读取 |
w***g 发帖数: 5958 | 3 yield那个叫coroutine
【在 l**********n 的大作中提到】 : scala和python都有yield. scala的yield和python的yield有区别吗?
|
d******e 发帖数: 2265 | 4 python的 yield花样很多。
你可以yield n
也可以
n = (yield)
还可以yield from a_list
本质上还是coroutine.
scala的yield不太了解只会用。
【在 l**********n 的大作中提到】 : scala和python都有yield. scala的yield和python的yield有区别吗?
|
l**********n 发帖数: 8443 | 5 两者都基于future?
【在 d******e 的大作中提到】 : python的 yield花样很多。 : 你可以yield n : 也可以 : n = (yield) : 还可以yield from a_list : 本质上还是coroutine. : scala的yield不太了解只会用。
|
p*****2 发帖数: 21240 | 6
scala不是。scala没有yield就是foreach,加了yield就是map,语法糖而已
【在 l**********n 的大作中提到】 : 两者都基于future?
|
l**********n 发帖数: 8443 | 7 how about scala Stream?
【在 p*****2 的大作中提到】 : : scala不是。scala没有yield就是foreach,加了yield就是map,语法糖而已
|
p*****2 发帖数: 21240 | 8 没用过 感觉应该还是语法糖吧
【在 l**********n 的大作中提到】 : how about scala Stream?
|
d******e 发帖数: 2265 | 9 python:
. This object has a __iter__ method which will continue after this yield
statement.
So the call stack gets transformed into a heap object.
【在 l**********n 的大作中提到】 : 两者都基于future?
|
d******e 发帖数: 2265 | 10 should be a simple iterator like this.
def from_x_stream(x):
count = x
while (true):
count += 1
yield count
【在 l**********n 的大作中提到】 : how about scala Stream?
|