The calculated distance (air line) between Castelldefels and Sant Pere de Ribes is approximately 10 miles respectively 17 kilometers.
By car or train, the actual journey to Sant Pere de Ribes is certainly longer, as only the direct route (as the crow flies) between Castelldefels and Sant Pere de Ribes has been calculated here.
Air line (approximately)
17 kilometers
9 nautical miles