[python-nl] while-lus vraagje

Guido Wesdorp guido at infrae.com
Mon Mar 13 13:06:44 CET 2006


Ik zag pas na versturen dat dit een persoonlijke reply was, bij deze
naar de lijst...

Guyon Morée wrote:
> misschien bedoelde je :
> 
> while a==b:
> 
> ?
> 
Ik vermoed van niet (al kan ik het mis hebben natuurlijk?): in een hoop
C-achtige talen is een dergelijk constructie vrij gebruikelijk: je slaat
de waarde van een functie call op in een variabele, en controleert
direct of hij naar false resolved, in dat geval stop je met loopen. Dit
maakt loops wat compacter, en zorgt dat 'while 1:' constructies zoals je
die in Python vaak ziet onnodig... In Python is in een hoop opzichten
wat expliciter dan zulke talen, en staat dit niet toe.

Voorbeeld van een use case (C-achtige pseudo code):

while (row = read_database_row()) {
  process_row(row);
};

(mogelijk) Python equivalent:

while 1:
  row = read_database_row()
  if not row:
    break
  process_row(row)

Hoop dat dit helpt!

Succes,

Guido



More information about the Python-nl mailing list