Even if a zip code contains multiple cities, each ZIP has one "preferred" locality name and you can default to that. Any of the locality names within a zip code is deliverable for all addresses in that zip code.
But sure, if you can do it right (e.g. "Put the country first"), then by all means do so!