On Thursday, June 23, 2016 at 1:20:37 AM UTC-4, DFS wrote: > On 6/23/2016 12:17 AM, Elizabeth Weiss wrote: > > > CODE #1: > > > > i=0 > > while 1==1: > > print(i) > > i=i+1 > > if i>=5: > > print("Breaking") > > break > > > > ------ > > I understand that i=0 and i will only be printed if 1=1 > > The results of this is > > 0 > > 1 > > 2 > > 3 > > 4 > > Breaking > > > > Why is Breaking going to be printed if i only goes up to 4? It does say if > > i>=5? Shouldn't this mean that the results should be: > > i is incremented up to 5, but you're printing i before incrementing and > evaluating it. > > Move i=i+1 to the end and try it again. > > > > > > > CODE #2: > > > > i=0 > > while True: > > i=i+1 > > if i==2: > > print("Skipping 2") > > continue > > if i==5: > > print("Breaking") > > break > > print(i) > > > > ------ > > > > Questions: > > 1. what does the word True have to do with anything here? > > 'True' is the expression that's evaluated on each iteration of the While > loop. > > while True: > print('True') > > while 1: > print('True') > > while 1==1: > print('True') > > are all equivalent, and will run indefinitely, because the statements > after the while expression do nothing to stop the loop. > > > > > > 2. i=i+1- I never understand this. Why isn't it i=i+2? > > i=i+1 adds 1 to the current value of i, then assigns that value to i. > > You can increment i by whatever you want: > i=i+1 > i=i+2 > i=i+35 > etc. > > > > > > 3. Do the results not include 2 of 5 because we wrote if i==2 and if i==5? > > The print results don't include 2 or 5 because you said 'continue' if 2 > and 'break' if 5. So you skipped over 2, and exited at 5. > > > > > > 4. How is i equal to 2 or 5 if i=0? > > i=0 before you entered the While loop. Then you increment it by one > (i=i+1) on each iteration of the loop. > > > > > Thanks for all of your help! > > > Also, there's a million python resources on the web. > > http://www.pythonschool.net/basics/while-loops/
Got it! Thank you! -- https://mail.python.org/mailman/listinfo/python-list