I would not separate and combine my geometry. That is potentially not production-friendly if you start changing vertex orders. If it is a personal project that is less important. If it is client or studio work and you are working with other departments, this is not really an option.
Instead, you can duplicate your geometry and separate that and work on that. Skin those parts separately. Then you can just delete it when you are done.
Then, this is how I copy weights to partial parts of a mesh:
Use ngSkinTools + masking. Copy the weights over and then mask out the areas.
Use Python. Here I’ll use PyMEL.
import pymel.core as pm
Let’s say you are trying to copy the separate hood back to your full geo, only on the hood area.
Select the separate hood, and run this Python:
source = pm.selected()
Select the vertices of just the hood area, and run this Python:
target = pm.selected()
Next, run this Python line, and it will copy the weights to the two variables you just stored, and it doesn’t matter what you have selected.
pm.copySkinWeights(source, target, noMirror=True, surfaceAssociation='closestPoint', ia=['oneToOne','name'])
The other benefit of doing it this way, is that on your separate hood geo, if it is double sided, you can delete one of the double-sides and paint just the one side. Then when you copy it back to the double-sided hood, it will be quite clean.