@linzero

Как определить количество цифр в числе, не выделяя каждую отдельную цифру, с использованием str?

Думаю, тут нужно str ???????????????
  • Вопрос задан
  • 133 просмотра
Пригласить эксперта
Ответы на вопрос 3
SuperStas0
@SuperStas0
Человек
n=input()
u=0
if str(int(n))==n:
    u+=1
if int(n)<0:
    u+=1
print(len(n)-u)


Почему -1 или -2?
Потому что если число это десятичная дробь, то там 1 знак будет точкой

Как проверить целое число или нет?
n - имеет тип str
int(n) - переводит n в число И ОКРУГЛЯЕТ ЕГО ВНИЗ
так что если у нас n="3.1415"
то int(n)=3
а при проверке str(int(n))==n, будет так:
"3"=="3.1415", то-есть False
Значит в n есть точка, которую нужно вычесть, при подсчёте кол-во цифр

ПРОШУ ЗАМЕЧАТЬ ТАКИЕ МОМЕНТЫ, ЭТО ВАЖНО!
Ответ написан
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
количество цифр в числе:
digitscount = lambda x:len(list(filter(str.isdigit, str(x))))

digitscount(1234)
# 4
digitscount(-0.98)
# 3
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы