学习如何用 Jython 编写 DB2 JDBC 工具
2009-12-08 00:00:00 来源:WEB开发网我们需要将结果写入文件中,以便进一步进行分析。为了说明如何在这里使用 Jython 的函数编程功能,下列代码中使用了 lambda 函数和列表理解,虽然也可以用命令式(imperative)编程风格来完成。
清单 3. (select3.jy)使用 lamda 和列表理解# lambda function
toStr=lambda e: e['firstname']+','+e['lastname']+',$'+ str(e['salary'])
# an example of list comprehension
# write the result into a file called "salaries.txt"
print '======================================'
print 'the results are saved in salaries.txt'
print '======================================'
try:
f=open('salaries.txt','w')
f.writelines([toStr(e)+'\n' for e in employeeList])
finally:
f.close()
注意:
一般来说,lambda 函数接收任何数目的参数,并返回单个表达式的值。它类似于 Java 中的匿名类,除了它是一个可在需要时作为参数来传递的第一级对象之外。Lambda 函数 toStr() 将为输出转换雇员的值(作为一个字典)。
([toStr(e)+'\n' for e in employeeList]) 通过 Jython 的列表理解,用 lambda 函数 toStr 将每个结果变成 slaries.txt 中的一行。将之与通过循环编写的等效代码进行比较。
Jython 中文本文件的处理只有简单的三行代码:open()、readlines/writelines (taking a list) 和 close()。再次设想如果用 java.io 编写会怎样。
获取图形(select4.jy)
让我们来尝试用 HTML 显示结果。还可以用红色突出显示薪水超过 $40,000 的那些雇员。
更多精彩
赞助商链接