Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 11, 2016 08:23:53

Palamar
Зарегистрирован: 2016-10-21
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Проверка числа в переменной

Добрый день.Только начал изучать python.Появился вопрос.
Нужно проверить введено ли число в переменную?Пример кода.
count = int(input(' Введите число: ‘))
Если вводишь не число,то ошибка.Подскажите как проверить введено ли число.
Первое что пришло в голову
if count != int()
print(’ введите число ')
Но єто само собой не работает.

Офлайн

#2 Ноя. 11, 2016 08:44:59

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Проверка числа в переменной

 v =input()
if not v.isdigit():
    print('...')



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Отредактировано JOHN_16 (Ноя. 11, 2016 08:45:46)

Офлайн

#3 Ноя. 11, 2016 09:35:15

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Проверка числа в переменной

 symbols = set(list(str(c) for c in range(10)) + ['+', '-', '.', 'e', 'E'])
nombre = input('Введите число:')
if [c for c in nombre if c not in symbols]:
    print('No entiendo!')



Офлайн

#4 Ноя. 11, 2016 11:34:52

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Проверка числа в переменной

izekia
Попробуй ввести туда e3



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#5 Ноя. 11, 2016 11:43:19

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Проверка числа в переменной

JOHN_16
Попробуй ввести туда e3
а я и не говорил что это универсально, если бы речь шла не о питоне я бы написал регулярку, но здесь важнее показать основные механизмы, мб кто-то из копирующих задумается, а почему тут так …

а так твое предложение звучит двусмысленно с учетом пятницы) не буду я куда попало вводить е3)



Офлайн

#6 Ноя. 11, 2016 11:48:36

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Проверка числа в переменной

А в чем глобальный смысл конструкции

 set(list(str(c) for c in range(10))
казалось бы, зачем создавать список из генератора, когда можно сразу сделать список
 [str(c) for c in range(10)]
но все еще интереснее, почему сразу не создать множество?

 {str(c) for c in range(10)}

ну и это тоже
 if [c for c in nombre if c not in symbols]
у нас же уже есть множество, почему не сделать разность?



Офлайн

#7 Ноя. 11, 2016 11:58:44

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Проверка числа в переменной

FishHook
ок, давайте с начала:
в чем по Вашему лучше конструкция

  [str(c) for c in range(10)]
чем
 list(str(c) for c in range(10))



Отредактировано izekia (Ноя. 11, 2016 11:59:26)

Офлайн

#8 Ноя. 11, 2016 12:02:51

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Проверка числа в переменной

izekia
Дорогой, ты меня троллить собрался или пришел на форум разводить словоблудие?
Не понимаешь, чем лучше? Серьезно?



Офлайн

#9 Ноя. 11, 2016 12:12:43

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Проверка числа в переменной

хотя да, лишний вызов: но не настолько критично в данном случае

  5           0 LOAD_GLOBAL              0 (list)
              3 LOAD_CONST               1 (<code object <genexpr> at 0x0000000004D9CE40, file "<ipython-input-9-d30f08a50c2d>", line 5>)
              6 LOAD_CONST               2 ('constr.<locals>.<genexpr>')
              9 MAKE_FUNCTION            0
             12 LOAD_GLOBAL              1 (range)
             15 LOAD_FAST                0 (n)
             18 CALL_FUNCTION            1 (1 positional, 0 keyword pair)
             21 GET_ITER
             22 CALL_FUNCTION            1 (1 positional, 0 keyword pair)
             25 CALL_FUNCTION            1 (1 positional, 0 keyword pair)
             28 RETURN_VALUE



Офлайн

#10 Ноя. 11, 2016 12:13:44

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Проверка числа в переменной

FishHook
izekiaДорогой, ты меня троллить собрался или пришел на форум разводить словоблудие?Не понимаешь, чем лучше? Серьезно?
нет, в данном контексте не понимаю



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version