Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #22107

Re: Documentation, assignment in expression.

From Dennis Lee Bieber <wlfraed@ix.netcom.com>
Subject Re: Documentation, assignment in expression.
Date 2012-03-23 21:09 -0400
Organization > Bestiaria Support Staff <
References <4f6d0060$0$6634$9b4e6d93@newsspool2.arcor-online.net>
Newsgroups comp.lang.python
Message-ID <mailman.948.1332551363.3037.python-list@python.org> (permalink)

Show all headers | View raw


On Fri, 23 Mar 2012 23:59:44 +0100, Alexander Blinne <news@blinne.net>
declaimed the following in gmane.comp.python.general:

> Hi,
> 
> I think this section of the docs needs some kind of rewrite:
> 
> <http://docs.python.org/faq/design.html#why-can-t-i-use-an-assignment-in-an-expression>
> 
> While it is great to discuss the reasons for not allowing an assignment
> in an expression, I feel that the given example is some kind of
> outdated. The last sentence "For example, in the current version of
> Python file objects support the iterator protocol, so you can now write
> simply (for line in file:)" makes me think that this section was written
> while that syntax was still new. No one I know would ever write
> something like this:
> 
> > while True:
> >     line = f.readline()
> >     if not line:
> >         break
> >     ... # do something with line
> 
> I think at least we need a new example. Any ideas?
>
	But remember -- this is a section on why no "assignment in
expression"...

	That means 

for line in f:
	#do stuff

is the counter to the equivalent C-style

while (line = f.readline() ):	#mixing C style with Python calls
	# do stuff

	The section is not meant to be an advocate for or against your true
Python design using an infinite loop, and separate input line.

	The emphasis on "current version" might do with updating -- by
explicitly stating when the iteration came in...
-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
        wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Documentation, assignment in expression. Alexander Blinne <news@blinne.net> - 2012-03-23 23:59 +0100
  Re: Documentation, assignment in expression. Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2012-03-23 21:09 -0400
    Re: Documentation, assignment in expression. Alexander Blinne <news@blinne.net> - 2012-03-25 14:18 +0200
      Re: Documentation, assignment in expression. Tim Chase <python.list@tim.thechases.com> - 2012-03-25 08:03 -0500
        Re: Documentation, assignment in expression. Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2012-03-26 05:36 +0000
          Re: Documentation, assignment in expression. Terry Reedy <tjreedy@udel.edu> - 2012-03-26 12:00 -0400
        Re: Documentation, assignment in expression. Thomas Rachel <nutznetz-0c1b6768-bfa9-48d5-a470-7603bd3aa915@spamschutz.glglgl.de> - 2012-03-26 15:59 +0200
          Re: Documentation, assignment in expression. Tim Chase <python.list@tim.thechases.com> - 2012-03-26 12:42 -0500
      Re: Documentation, assignment in expression. Chris Angelico <rosuav@gmail.com> - 2012-03-26 00:11 +1100
      Re: Documentation, assignment in expression. Tim Chase <python.list@tim.thechases.com> - 2012-03-25 08:48 -0500
        Re: Documentation, assignment in expression. Kiuhnm <kiuhnm03.4t.yahoo.it> - 2012-03-25 17:16 +0200
          Re: Documentation, assignment in expression. Tim Chase <python.list@tim.thechases.com> - 2012-03-25 13:22 -0500
          Re: Documentation, assignment in expression. Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2012-03-26 05:47 +0000
          Re: Documentation, assignment in expression. Devin Jeanpierre <jeanpierreda@gmail.com> - 2012-03-26 04:52 -0400
            Re: Documentation, assignment in expression. Kiuhnm <kiuhnm03.4t.yahoo.it> - 2012-03-26 12:56 +0200
              Re: Documentation, assignment in expression. Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2012-03-26 14:13 +0300
                Re: Documentation, assignment in expression. Kiuhnm <kiuhnm03.4t.yahoo.it> - 2012-03-26 13:58 +0200
        Re: Documentation, assignment in expression. rusi <rustompmody@gmail.com> - 2012-03-25 09:17 -0700
        Re: Documentation, assignment in expression. mwilson@the-wire.com - 2012-03-25 19:09 -0400
          Re: Documentation, assignment in expression. Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2012-03-25 22:29 -0400
            Re: Documentation, assignment in expression. mwilson@the-wire.com - 2012-03-26 07:27 -0400
      Re: Documentation, assignment in expression. Chris Angelico <rosuav@gmail.com> - 2012-03-26 01:11 +1100
        Re: Documentation, assignment in expression. Kiuhnm <kiuhnm03.4t.yahoo.it> - 2012-03-25 17:17 +0200
      Re: Documentation, assignment in expression. Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2012-03-25 18:59 -0400
        Re: Documentation, assignment in expression. Thomas Rachel <nutznetz-0c1b6768-bfa9-48d5-a470-7603bd3aa915@spamschutz.glglgl.de> - 2012-03-26 15:54 +0200
          Re: Documentation, assignment in expression. Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2012-03-26 12:16 -0400
      Re: Documentation, assignment in expression. Tim Chase <python.list@tim.thechases.com> - 2012-03-26 05:14 -0500
  Re: Documentation, assignment in expression. Roy Smith <roy@panix.com> - 2012-03-23 21:37 -0400

csiph-web