On 02/10/18 12:31, Jonathan Fine wrote:
Mikhail V has suggested "while:" as a shorthand for "while True:".
He's also provided a helpful list of URLs for related discussion. I'd
like to suggest another approach.
Before we hare off into the middle distance, could you show that there
is a problem that needs to be addressed here? I killfiled Mikhail a
long time ago, so I haven't actually seen any justification here beyond
"I don't want to have to type five more characters."
My suggestion is to improved documentation and help. For me a search for
python "while True"
produces as the top result https://wiki.python.org/moin/WhileLoop.
Please take a look at this page. I don't think it's suitable for
novices. In particular, about 25% of the page compares "while 1:" to
"while True:" and changes between Python2 and Python3.
Is it intended solely for novices?
Searching for
site:docs.python.org "while True"
produces as top result https://docs.python.org/3/tutorial/controlflow.html.
Please also look at this page. It has two examples of "while True:",
but does not say that "while True:" means loop forever (unless there
is a break or an exception).
This is an invidious example. "while" is actually introduced on the
previous page, as the first paragraph says. Expecting a statement of
the blindingly obvious here is inappropriate, surely. (And yes, my
experience with early teens is that it *is* blindingly obvious.)
Today I saw
https://blog.codeclub.org.uk/2018/06/13/how-to-move-from-scratch-to-python-in-code-club/
On this page, a Code Club volunteer gives as debugging advice
<quote>
I use comparisons of Scratch to Python at the beginning, for example
to explain that ‘while True’ is the same as the ‘Forever’ block. I
also have some Python cheat sheets which give examples of common
Python code. Some of the learners find it easier to debug Python than
Scratch, because Python gives you error messages to indicate what went
wrong. It’s usually down to spelling errors!
</quote>
Um, yay? I'm not sure what your point here is. So Scratch has a
Forever block, so what?
My final URL is https://www.youtube.com/watch?v=QEJ8tE9lAeE.
This is a 3 minute video: Python For Beginners - How to use a While
True Loop in Python.
Something that can be done now, which can soon bring benefit to many,
is to find or write material that will help novices master Python
idioms such as "while True:". I'm sure the Code Club would like to put
such material on its web site.
I'm sorry, but I find the idea that idioms like "while True:" need to be
*mastered* a tad patronising. I have genuinely not had to take more
than five minutes to get it through to an uninterested and not
particularly technical 12-year old.
--
Rhodri James *-* Kynesim Ltd
_______________________________________________
Python-ideas mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/