通常,程序中的语句是按顺序执行的:函数中的第一个语句首先执行,然后是第二个,依此类推。在某些情况下,您需要多次执行一个代码块。提供此类重复功能的语句称为循环语句。
在 Jython 中,一个循环可以由两个语句组成,它们是 -
- while 语句
- for 语句
WHILE 循环
Jython 中的 while 循环语句类似于 Java 中的语句。只要给定条件为 true,它就会重复执行语句块。以程图描述了 while 循环的行为。

while 语句的一般语法如下。
while expression:
statement(s)
下面的 Jython 代码使用 while 循环重复递增和打印变量的值,直到它小于零。
count = 0
while count<10:
count = count+1
print "count = ",count
print "Good Bye!"
输出 − 输出如下。
count = 1
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10
Good Bye!
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10
Good Bye!
FOR 循环
Jython 中的 FOR 循环不像 Java 中那样是一个计数循环。相反,它能够遍历 sequence 数据类型(如 string、list 或 tuples)中的元素。Jython 中 FOR 语句的一般语法如下所示 -
for iterating_var in sequence:
statements(s)
我们可以使用 FOR 语句显示字符串中的每个字符,以及 List 或 Tuples 中的每个项目,如下所示 -
#each letter in string
for letter in 'Python':
print 'Current Letter :', letter
输出 − 输出如下。
Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : h
Current Letter : o
Current Letter : n
Current Letter : y
Current Letter : t
Current Letter : h
Current Letter : o
Current Letter : n
让我们考虑另一个实例,如下所示。
#each item in list
libs = [‘PyQt’, 'WxPython', 'Tkinter']
for lib in libs: # Second Example
print 'Current library :', lib
输出 − 输出将如下所示。
Current library : PyQt
Current library : WxPython
Current library : Tkinter
Current library : WxPython
Current library : Tkinter
这是另一个需要考虑的例子。
#each item in tuple
libs = (‘PyQt’, 'WxPython', 'Tkinter')
for lib in libs: # Second Example
print 'Current library :', lib
输出 − 上述程序的输出如下。
Current library : PyQt
Current library : WxPython
Current library : Tkinter
Current library : WxPython
Current library : Tkinter
在 Jython 中,for 语句也用于迭代 range() 函数生成的数字列表。range() 函数采用以下形式 -
range[([start],stop,[step])
默认情况下,start 和 step 参数为 0 和 1。生成的最后一个数字是 stop step。FOR 语句遍历由 range() 函数形成的列表。例如 -
for num in range(5):
print num
它生成以下输出 -
0
1
2
3
4
1
2
3
4