yield expression

Discussion in 'Python' started by Ziliang Chen, Feb 25, 2013.

  1. Ziliang Chen

    Ziliang Chen Guest

    Hi folks,
    When I am trying to understand "yield" expression in Python2.6, I did the following coding. I have difficulty understanding why "val" will be "None" ?What's happening under the hood? It seems to me very time the counter resumes to execute, it will assign "count" to "val", so "val" should NOT be "None" all the time.

    Thanks !

    code snippet:
    ----
    def counter(start_at=0):
    count = start_at
    while True:
    val = (yield count)
    if val is not None:
    count = val
    else:
    print 'val is None'
    count += 1
     
    Ziliang Chen, Feb 25, 2013
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    1
    Views:
    341
    Gabriel Genellina
    Apr 22, 2008
  2. Markus
    Replies:
    1
    Views:
    217
    Mark Hubbart
    Sep 27, 2004
  3. Michael Edgar
    Replies:
    13
    Views:
    303
    Brian Candler
    Apr 21, 2011
  4. Ziliang Chen

    yield expression

    Ziliang Chen, Feb 25, 2013, in forum: Python
    Replies:
    7
    Views:
    132
    Dave Angel
    Feb 27, 2013
  5. Ziliang Chen

    yield expression

    Ziliang Chen, Feb 25, 2013, in forum: Python
    Replies:
    3
    Views:
    124
    Ziliang Chen
    Feb 25, 2013
Loading...

Share This Page