There are
1,299 mi
from Houston, TX to Petersburg, VA
That's the driving distance. It would take 1 day to go from Houston, Texas to Petersburg, Virginia.
The flight distance (direct flight from Houston, TX to Petersburg, VA) is 1,154.05 mi.
1,299 mi = 1.61 kms