Print vector with more decimal numbers
str and repr

What you see in a print statement is the classes __str__ method, or how to represent the instance as a string, which as mentioned prints to 4 decimal places.

&gt;&gt;&gt; str(C.object.location)
'&lt;Vector (0.0000, 1.6400, 0.0000)&gt;'


The representation, defined on class as def __repr__(self) result

&gt;&gt;&gt; repr(C.object.location)
'Vector((0.0, 1.6399999856948853, 0.0))'


Gives us the values we would get from printing individuals.

&gt;&gt;&gt; C.object.location.y
1.6399999856948853


and is what you see for result echoed in the python console.

&gt;&gt;&gt; C.object.location
Vector((0.0, 1.6399999856948853, 0.0))


Similarly for matrix

&gt;&gt;&gt; str(C.object.matrix_world)
'&lt;Matrix 4x4 ( 0.9893, 0.0000, 0.0000, 0.0000)\n            ( 0.0000, 1.0000, 0.0000, 1.6400)\n            (-0.1461, 0.0000, 0.0000, 0.0000)\n            ( 0.0000, 0.0000, 0.0000, 1.0000)&gt;'

&gt;&gt;&gt; repr(C.object.matrix_world)
'Matrix(((0.9892723560333252, 0.0, 0.0, 0.0),\n        (0.0, 1.0, 0.0, 1.6399999856948853),\n        (-0.1460830420255661, 0.0, 0.0, 0.0),\n        (0.0, 0.0, 0.0, 1.0)))'

&gt;&gt;&gt; print(repr(C.object.matrix_world))
Matrix(((0.9892723560333252, 0.0, 0.0, 0.0),
        (0.0, 1.0, 0.0, 1.6399999856948853),
        (-0.1460830420255661, 0.0, 0.0, 0.0),
        (0.0, 0.0, 0.0, 1.0)))


To have 7 decimal places for each the suggestion in question is a good as any.

&gt;&gt;&gt; print("%.7f, %.7f, %.7f" % C.object.location[:])
0.0000000, 1.6400000, 0.0000000