Qia*_* Li 3 wolfram-mathematica
如果我输入
DateString[{2011, 2, 29, 0, 0, 0}, {"DayName"}]
它给出了"Tuesday".
并且,
DateString[{2011, 2, 29, 0, 0, 0}, {"DayName"}]
DateString[{2011, 3, 1, 0, 0, 0}, {"DayName"}]
这看起来像是正确的行为.文件DateString说:"m,d,h,m,s超出正常范围的值会适当减少." 这就是发生的事情:今年2月29日确实没有,但是如果有的话,实际上是3月1日,那确实是星期二.
Needs["Calendar`"];
myDay[x_List] := DateString[x, {"DayName"}] /; DateQ[x]
myDay[{2000, 1, 1}]
->"Saturday"
myDay[{2000, 13, 13}]
->myDay[{2000, 13, 13}]
Run Code Online (Sandbox Code Playgroud)
当然,如果您愿意,可以抛出一条消息(或Abort []或其他):
Needs["Calendar`"];
Clear@myDay;
myDay[x_] /; If[DateQ[x], True, Message[myDay::nodate, x]; False] :=
DateString[x, {"DayName"}]
myDay::nodate = "The argument `1` is not a valid date.";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
106 次 |
| 最近记录: |