Jython - 循环

通常,程序中的语句按顺序执行:首先执行函数中的第一个语句,然后执行第二个语句,依此类推.可能存在需要多次执行代码块的情况.提供这种重复功能的语句称为循环语句.

在Jython中,循环可以由两个语句组成,这些语句是 :

  • while 语句和

  • for 语句

WHILE循环

A while循环Jython中的语句与Java中的语句类似.只要给定条件为真,它就会重复执行一个语句块.以下流程图描述了 while 循环的行为.

While Loop

下面给出了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!

FOR循环

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