# 9.12. Traversal and the while Loop¶

The while loop can also control the generation of the index values. Remember that the programmer is responsible for setting up the initial condition, making sure that the condition is correct, and making sure that something changes inside the body to guarantee that the condition will eventually fail.

The loop condition is position < len(fruit), so when position is equal to the length of the string, the condition is false, and the body of the loop is not executed. The last character accessed is the one with the index len(fruit)-1, which is the last character in the string.

Here is the same example in codelens so that you can trace the values of the variables.

(ch08_7c1)

strings-12-1: How many times is the letter o printed by the following statements?

s = "python rocks"
idx = 1
while idx < len(s):
print(s[idx])
idx = idx + 2

• (A) 0
• Yes, idx goes through the odd numbers starting at 1. o is at position 4 and 8.
• (B) 1
• o is at positions 4 and 8. idx starts at 1, not 0.
• (C) 2
• There are 2 o characters but idx does not take on the correct index values.

Note

This workspace is provided for your convenience. You can use this activecode window to try out anything you like.

Next Section - 9.13. The in and not in operators