通常,程序中的语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推.可能存在需要多次执行代码块的情况.提供这种重复功能的语句称为循环语句.
在Jython中,循环可以由两个语句组成,这些语句是 :
while 语句和
for 语句
A while循环Jython中的语句与Java中的语句类似.只要给定条件为真,它就会重复执行一个语句块.以下流程图描述了 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!
Jython中的FOR循环不是Java中的计数循环.相反,它能够遍历序列数据类型中的元素,如字符串,列表或元组. Jython中FOR语句的一般语法如下所示 :
for iterating_var in sequence: statements(s)
我们可以使用FOR语句显示字符串中的每个字符,以及List或Tuple中的每个项目,如下所示 :
#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
让我们考虑另一个实例如下.
#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
这是另一个要考虑的实例.
#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
在Jython中, for 语句也用于迭代由range()函数生成的数字列表. range()函数采用以下形式 :
range[([start],stop,[step])
默认情况下,start和step参数为0和1.生成的最后一个数字是停止步骤. FOR语句遍历由 range()函数形成的列表.例如 :
for num in range(5): print num
它产生以下输出 :
0 1 2 3 4