The "loop and a half"
Peter Otten
__peter__ at web.de
Tue Oct 3 14:10:29 EDT 2017
Stefan Ram wrote:
> Is this the best way to write a "loop and a half" in Python?
>
> x = 1
> while x:
> x = int( input( "Number (enter 0 to terminate)? " ))
> if x:
> print( f'Square = { x**2 }' )
>
> In a C-like language, one could write:
>
> while x = int( input( "Number (enter 0 to terminate)? " ))
> print( f'Square = { x**2 }' )
Use iter() and a for loop:
>>> def input_int():
... return int(input("Enter number (0 to terminate): "))
...
>>> for x in iter(input_int, 0):
... print(f"Square = { x**2 }")
...
Enter number (0 to terminate): 1
Square = 1
Enter number (0 to terminate): 2
Square = 4
Enter number (0 to terminate): 0
>>>
More information about the Python-list
mailing list