Iodine is a solid at room temperature. Therefore its molecules attract one another although they are non-polar (because symetrical)! What could be the origin of those forces? Think about a non-polar molecule, the electrons are symbolised by the red color: These electrons are mobile, but at a given point in time there might be more on one end than on the other: One moment later the situation might have just turned around: The electron cloud is subject to fluctuations, even that of non-polar molecules.
Just let us imagine that a temporarly polarised molecule approaches a non polarized molecule: The electrons of the non polarized molecule will be attracted by the δ+ of the temporarly polarised molecule. One moment later, the polarization of the molecule at the left side can be inversed and its δ- pushes back the electrons of the molecule on the right side so that a new δ+ appears there. But in any case, the partial temporary charges δ+ et δ- attract and the result is a force attracting the two molecules (force of van der Waals - London)
The temporary polarization of molecules creates molecular lattices :