There isen't a problem yet, already using strings as keys.
So vectors can be changed while editing dictionares?
var pos = Vector3(1,2,3)
var objects_list = {}
for x in range(pos.x,pos.x+100):
for z in range(pos.z,pos.z+100):
var v = objects_list.get(Vector3(x,0,z))
if v == null:
objects_list[Vector3(x,0,z)] = {object,data,etc}