#python #python-3.x #list
#python #python-3.x #Список
Вопрос:
Я хочу написать код для преобразования числа с плавающей запятой, такого как 0.00123 в 123, я действительно не знаю, как это точно объяснить. Допустим, у меня есть этот код:
Entry = float(input("Give me the Entry position: "))
мы можем предположить, что я получаю входные данные 0.005686584. Я хочу удалить начальные нули и получить остальные числа в качестве выходных данных (5686584).
Примеры: 0.4537823 -> 4537823, 0.001234 -> 1234
Комментарии:
1. Этих примеров недостаточно. Скажем, у меня есть
00456.78
, должно ли оно быть преобразовано в45678
игнорирование 0 или должно быть78
(с учетом десятичной дроби)?
Ответ №1:
Сохраните входные данные в виде строки, удалите «точку» и преобразуйте ее в int:
entry = input("Give me the Entry position: ") # 0.000023
print(int(entry.replace('.', '')))
Выход:
23
Альтернативно вы можете отфильтровать все символы, которые не являются цифрой:
# entry = input("Give me the Entry position: ")
entry = "ffff89084023432.092"
print(int(''.join(x for x in entry if x.isdigit())))
Выход:
89084023432092
Ответ №2:
Если вы не хотите использовать replace()
и хотите выполнить некоторую математику, проверьте это:
n = float(input())
while int(n) != n:
n *= 10
print(int(n))