On 03/10/17 18:29, Stefan Ram wrote:
Is this the best way to write a "loop and a half" in Python?
Define "best".
x = 1 while x: x = int( input( "Number (enter 0 to terminate)? " )) if x: print( f'Square = { x**2 }' )
I'd usually write it as while True: x = tedious_function_call_with_sentinel() if x == 0: break do_something_with(x) ...or alternatively x = tedious_function_call_with_sentinel() while x != 0: do_something_with(x) x = tedious_function_call_with_sentinel() ...or some other refactoring.
In a C-like language, one could write: while x = int( input( "Number (enter 0 to terminate)? " )) print( f'Square = { x**2 }' )
One could. One would richly deserve the compiler warnings one got as a result, but one could.
-- Rhodri James *-* Kynesim Ltd -- https://mail.python.org/mailman/listinfo/python-list