- 在线时间
- 4 小时
- 最后登录
- 2015-5-5
- 注册时间
- 2015-4-8
- 听众数
- 9
- 收听数
- 0
- 能力
- 0 分
- 体力
- 86 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 38
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 22
- 主题
- 12
- 精华
- 0
- 分享
- 0
- 好友
- 3
升级   34.74% TA的每日心情 | 慵懒 2015-5-5 09:35 |
|---|
签到天数: 10 天 [LV.3]偶尔看看II
- 自我介绍
- sdc
 |
Python的生成器语法,会返回一个生成器对象,而用iter()函数,也能返回一个带有next()方法的可迭代对象,这样的话··按照我下面的写法,2者会有什么区别吗?如果一样,那生成器岂不是没用了?(所以·····) ; o7 L; G' I: X3 B- [! P5 N
* S" u/ }6 a) P: k+ V: T5 }; Bdef createGenerator() : 5 E) J: i( `% d8 E' X3 ~# Y' R
mylist = range(10) d! h2 o0 B$ l8 D$ E( a3 W3 y7 m6 n, j
/ j0 B" ^% o7 `. A( N0 ]4 P for i in mylist : , k. c/ y) L' ]% k7 |
yield i*i
; m! E1 M3 v, g, |8 x9 e! i5 I. ~1 }. {/ N6 [4 R
mygenerator = createGenerator() # create a generator , x% M* E9 J9 g# ?
print mygenerator
5 ~/ K6 n3 S8 d+ ?# Z* {: B1 r- b# a1 {" k6 z7 I, K' e
def createIterator() : 3 I$ {+ v2 D# L9 }" m; V
mylist = range(10)
0 Y: o% `) c+ n; |# ~+ }$ y4 [
# {: c2 W- R5 t return iter([i * i for i in mylist]) 1 `* u' r9 s) T2 D# z
2 Q E! G. P; T
myiterator = createIterator() + i+ W* F& f j" o# g
print myiterator ; t& _/ h/ M6 b& f3 t3 J* u
( a2 e. D4 N" V" n. j" V |
zan
|