Saint-Flour (Occitaans: Sant Flor) is een gemeente in het zuiden van Midden-Frankrijk in de regio Auvergne-Rhône-Alpes. Het is een onderprefectuur van het departement Cantal. Het is ook de hoofdstad van het gelijknamige arrondissement.