In the mma help docs for Position
, the following is listed under "Possible Issues"
In[开发者_JS百科1]:= Position[Range[-1, 1, 0.05], 0.1]
Out[1]= {}
There is no explanation given though. Why does this happen? So if I really need to find the position of 0.1
in Range[-1,1,0.05]
, how do I do it?
It is a numeric precision issue: 0.1 in the Range
is not internally the same as 0.1 typed in. The normal way to resolve this is to compare with Equal
rather than the implicit SameQ
.
Position[Range[-1, 1, 0.05], x_ /; x == 0.1]
精彩评论