Convierte una cadena a entero con decimal en Python
Tengo una cadena en el formato: 'nn.nnnnn' en Python, y me gustaría convertirla en un entero.
La conversión directa falla:
>>> s = '23.45678'
>>> i = int(s)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '23.45678'
Puedo convertirlo a un decimal usando:
>>> from decimal import *
>>> d = Decimal(s)
>>> print d
23.45678
También podría dividir en '.', Luego restar el decimal de cero, luego sumarlo a todo el número ... asco.
Pero prefiero tenerlo como un int, sin conversiones de tipo innecesarias o maniobras.