Jython - 循环

一般来说,程序中的语句是按顺序执行的:函数中的第一条语句先执行,然后是第二条,依此类推。 可能存在需要多次执行一段代码的情况。 提供这种重复能力的语句称为循环语句

在 Jython 中,循环可以由两条语句组成,它们是 −

  • while 语句和

  • for 语句


WHILE 循环

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

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!

FOR 循环

Jython 中的 FOR 循环不是 Java 中的计数循环。 相反,它具有遍历序列数据类型(例如字符串、列表或元组)中的元素的能力。 Jython 中 FOR 语句的一般语法如下所示 −

for iterating_var in sequence:
   statements(s)

我们可以使用 FOR 语句显示字符串中的每个字符,以及列表或元组中的每个项目,如下所示 −

#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