pattern = '[+-]?(?:\\d+\\.\\d*|\\.\\d+|\\d+(?=[eE]))(?:[eE][+-]?\\d+)?'
re.match(pattern, '4.')
re.match(pattern, '4.4')
re.match(pattern, '.4')
re.match(pattern, '4e4')
Regex for Matching a Floating Point Number which is not an Integer