Python Jython的日期时间

Python Jython的日期时间,python,jython,apache-nifi,Python,Jython,Apache Nifi,我需要知道今天是不是工作日 在CPython中,我将使用datetime: import datetime today=datetime.date.today() if today.isoweekday()==0 or today.isoweekday()==6 print "weekend" else: print "weekday" 然而,由于我使用NiFi,我不得不使用Jython。它显然实现了datetime作为某个JDBC类的别名。 如果我在NiFi中尝试上面的代码,我会

我需要知道今天是不是工作日

在CPython中,我将使用datetime:

import datetime
today=datetime.date.today()
if today.isoweekday()==0 or today.isoweekday()==6
   print "weekend"
else:
   print "weekday"
然而,由于我使用NiFi,我不得不使用Jython。它显然实现了datetime作为某个JDBC类的别名。 如果我在NiFi中尝试上面的代码,我会得到以下错误:

AttributeError:'java.sql.Date'对象在第8行没有属性'isoweekday'


在这种情况下,我怎样才能知道一周中的哪一天?

您必须在Jython中执行此确定吗?ApacheNIFI公开了一种自定义表达式语言,它允许您在不加载全新的计算环境的情况下在flowfile属性或内容中执行某些操作。通过使用with,您可以创建一个布尔表达式,该表达式将适当地返回
weekday
weekend

本例使用返回当前时间的
now()
,但您也可以使用现有属性值,如
12/10/2018
或类似字符串,可以根据EL文档使用
toDate()
进行解析

${now():format(“E”):in(“Sat”,“Sun”):ifElse(“weekend”,“weekday”)}


这在ApacheNIFI 1.9.0-SNAPSHOT上进行了测试,但在引入
ifElse
时,应适用于1.2.0之后的任何版本

我在jython2.7.0中没有看到这个问题。你用的是哪个版本?也应该是2.7。但是我不知道NiFi怎么称呼它,我不需要在Jython里这样称呼它。然而,这是一个更大的脚本的一部分,该脚本还检查日期是否在一系列假期中(我们在巴西有很多这样的假期)