通常,程序中的语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推.可能存在需要多次执行代码块的情况.提供这种重复功能的语句称为循环语句.
在Jython中,循环可以由两个语句组成,这些语句是 :
while 语句和
for 语句
WHILE循环
A while循环Jython中的语句与Java中的语句类似.只要给定条件为真,它就会重复执行一个语句块.以下流程图描述了 while 循环的行为.
下面给出了while语句的一般语法.
while expression: statement(s)
以下Jython代码使用while循环重复递增并打印变量的值,直到它小于零.
count = 0while count<10: count = count+1 print "count = ",countprint "Good Bye!"
输出 : 输出如下.
count = 1count = 2count = 3count = 4count = 5count = 6count = 7count = 8count = 9count = 10Good Bye!
FOR循环
Jython中的FOR循环不是Java中的计数循环.相反,它能够遍历序列数据类型中的元素,如字符串,列表或元组. Jython中FOR语句的一般语法如下所示 :
for iterating_var in sequence: statements(s)
我们可以使用FOR语句显示字符串中的每个字符,以及List或Tuple中的每个项目,如下所示 :
#each letter in stringfor letter in 'Python': print 'Current Letter :', letter
输出 : 输出如下.
Current Letter : PCurrent Letter : yCurrent Letter : tCurrent Letter : hCurrent Letter : oCurrent Letter : n
让我们考虑另一个实例如下.
#each item in listlibs = [‘PyQt’, 'WxPython', 'Tkinter']for lib in libs: # Second Example print 'Current library :', lib
输出 : 输出如下.
Current library : PyQtCurrent library : WxPythonCurrent library : Tkinter
这是另一个要考虑的实例.
#each item in tuplelibs = (‘PyQt’, 'WxPython', 'Tkinter')for lib in libs: # Second Example print 'Current library :', lib
输出 : 上述程序的输出如下:
Current library : PyQtCurrent library : WxPythonCurrent library : Tkinter
在Jython中, for 语句也用于迭代由range()函数生成的数字列表. range()函数采用以下形式 :
range[([start],stop,[step])
默认情况下,start和step参数为0和1.生成的最后一个数字是停止步骤. FOR语句遍历由 range()函数形成的列表.例如 :
for num in range(5): print num
它产生以下输出 :
01234