El cantó de Ham és un cantó francès al districte de Péronne del departament del Somme. Té 19 municipis (Athies, Brouchy, Croix-Moligneaux, Devise, Douilly, Ennemain, Eppeville, Esmery-Hallon, Ham, Matigny, Monchy-Lagache, Muille-Villette, Offoy, Quivières, Sancourt, Tertry, Ugny-l'Équipée, Villecourt i Y) i el cap és Ham.