It's not your 'fault' that GetFrameTime() returns 0, it's the inaccuracy of floats...
Have you taken a look at the Python binding for SFML 2, because the API has changed and a new class was introduced sf::Time which works around this problem.
To 'fix' your problem with the binding you're using now, you can either check if GetFrameTime() is zero and if so, define the FPS as infinite or very very high, or you could always blindly add some small number to it (e.g. 0.00001)