我有一个带有一些嵌入式脚本的stax doc,用于检查今天是星期三还是星期六,在初始格式化后,正确的日期打印到屏幕上,但在find()方法中,“Wed”始终打印到屏幕,甚至在星期六有没有更好的方法来比较?
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')
答案 0 :(得分:0)
当代码在星期六运行时,day
的值为“星期六”,这一位:
day.find('Sat')
返回0.这是day
字符串中找到子字符串“Sat”的最低索引。请参阅http://www.jython.org/docs/library/stdtypes.html#string-methods。
0相当于布尔False
。
这将有效:
if day.find('Sat') > -1:
print('Sat')
或更简单:
if day == 'Sat':
print('Sat')