Форум сайта python.su
0
Добрый день.Только начал изучать python.Появился вопрос.
Нужно проверить введено ли число в переменную?Пример кода.
count = int(input(' Введите число: ‘))
Если вводишь не число,то ошибка.Подскажите как проверить введено ли число.
Первое что пришло в голову
if count != int()
print(’ введите число ')
Но єто само собой не работает.
Офлайн
221
v =input() if not v.isdigit(): print('...')
Отредактировано JOHN_16 (Ноя. 11, 2016 08:45:46)
Офлайн
12
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!')
Офлайн
221
izekia
Попробуй ввести туда e3
Офлайн
12
JOHN_16а я и не говорил что это универсально, если бы речь шла не о питоне я бы написал регулярку, но здесь важнее показать основные механизмы, мб кто-то из копирующих задумается, а почему тут так …
Попробуй ввести туда e3
Офлайн
568
А в чем глобальный смысл конструкции
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]
Офлайн
12
FishHook
ок, давайте с начала:
в чем по Вашему лучше конструкция
[str(c) for c in range(10)]
list(str(c) for c in range(10))
Отредактировано izekia (Ноя. 11, 2016 11:59:26)
Офлайн
568
izekia
Дорогой, ты меня троллить собрался или пришел на форум разводить словоблудие?
Не понимаешь, чем лучше? Серьезно?
Офлайн
12
хотя да, лишний вызов: но не настолько критично в данном случае
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
Офлайн
12
FishHookнет, в данном контексте не понимаю
izekiaДорогой, ты меня троллить собрался или пришел на форум разводить словоблудие?Не понимаешь, чем лучше? Серьезно?
Офлайн