0

我有一个带有一些嵌入式脚本的 stax 文档来检查今天是星期三还是星期六,在初始格式化后,正确的一天被打印到屏幕上,但是在 find() 方法中,“星期三”总是打印到屏幕上,即使是在星期六. 有没有更好的方法来做这个比较?
jython 代码可以在脚本中运行

import java.util.Date
import java.util.Calendar
import java.text.SimpleDateFormat

now = java.util.Date()
dayFormat = java.text.SimpleDateFormat('EEE')
cal = java.util.Calendar.getInstance();  
cal.setTime(now);  
cal.add(java.util.Calendar.HOUR, 5);
dayBeforeFormat = cal.getTime();

day = str(dayFormat.format(dayBeforeFormat))
print(day)


if day.find('Sat'):
    print('Sat')
elif day.find('Wed'):
    print('Wed')
4

1 回答 1

0

当代码在星期六运行时,值为day"Sat" 和这一位:

day.find('Sat')

返回 0。这是day字符串中找到子字符串“Sat”的最低索引。请参阅http://www.jython.org/docs/library/stdtypes.html#string-methods

0 相当于 boolean False

这将起作用:

if day.find('Sat') > -1:
    print('Sat')

或更简单:

if day == 'Sat':
    print('Sat')
于 2012-05-05T10:08:06.960 回答