# В функцию подается строка.
# Не гарантируется, что строка будет корректной и
#~ содержать собственно число.
import re
def foo(s):
if some_regexp_int: #проверка на int
return(int(s))
elif some_regexp_float: # проверка на float
return(float(s))
else:
print('Uncorrect string!!')
# Как и какую нужно использовать функцию re,
#~ чтобы выполнилось одно из условий,
#~ при том, что кроме числа в строке не должно быть ничего
#~ (гарантируется: пробелов не будет, даже внутри числа)?
def foo(s):
try:
s_int=int(s)
return s_int
except ValueError:
try:
s_float=float(s)
return s_float
except ValueError:
print "Incorrect string!"
print foo('123')
print foo('123.5')
print foo('1e-10')
print foo('toster')