Getting X coordinates from a Point3dList() - confusion

I’m confused… Can someone tell me what is my incorrect assumption here?

According to this, I should be able to access the X coordinates of my Point3dList()
https://developer.rhino3d.com/api/RhinoCommon/html/T_Rhino_Collections_Point3dList_XAccess.htm

I’m not allowed to address the access (pts.X) directly, but I can get a list of the items… So why do I get the extra 0’s?

import Rhino

pts=Rhino.Collections.Point3dList()
pts.Add(Rhino.Geometry.Point3d(0,0,0))
pts.Add(Rhino.Geometry.Point3d(1,0,0))
pts.Add(Rhino.Geometry.Point3d(2,0,0))
pts.Add(Rhino.Geometry.Point3d(3,0,0))
pts.Add(Rhino.Geometry.Point3d(4,0,0))

print "Total points: {}".format(pts.Count)
#try to get all X coordinates - can't address pts.X directly
x_coords=[item for item in pts.X]  #Wrong!!
print "Total X coordinates: {}".format(len(x_coords))
print x_coords

Total points: 5
Total X coordinates: 8 !
[0.0, 1.0, 2.0, 3.0, 4.0, 0.0, 0.0, 0.0]

Thx, --Mitch

OK, nevermind, I just re-read the api doc for Item and it wants an INDEX, not the item itself, of course…

So this works:

x_coords=[pts.X[i] for i in range(pts.Count)]