Да, в данной ветке уже был, внимательно ознакомился. Все идеально, но там описывают числа с плавающей точкой, хотелось бы то-же самое, но для целых чисел.
1 ноя 2016 в 6:02
float меняете на int и будет тоже самое
1 ноя 2016 в 6:19
Взяв за основу: print(‘это число’ if isfloat(input(‘введите число’)) else ‘это не число’) и заменив «float» на «int» получил: «NameError: name ‘isint’ is not defined»
1 ноя 2016 в 6:58
Насколько я понял из ваших комментариев к другим ответам, вам нужно просто проверить, что строка содержит только цифры или минус на первой позиции. Это элементарно реализуется в несколько строчек.
1 ноя 2016 в 12:23
6 ответов 6
Сортировка: Сброс на вариант по умолчанию
def isint(s): try: int(s) return True except ValueError: return False
>>> isint(’10’) True >>> isint(‘a’) # не десятичная цифра False >>> isint(‘²’) # верхний индекс False >>> isint(‘১’) # Bengali (Unicode) True
Это может сломаться, если ввод не строка, например:
Python l Извлечение цифр из строки ( поиск чисел в строке)
>>> isint(0.5) # XXX не работает для float True >>> 0.5 .is_integer() False >>> from numbers import Integral >>> isinstance(0.5, Integral) False >>> isinstance(123, Integral) True >>> isinstance(1., Integral) # XXX float False >>> 1..is_integer() # но целое значение True >>> from fractions import Fraction >>> isint(Fraction(1, 2)) # XXX не работает для дробей True >>> isinstance(Fraction(1, 2), Integral) False >>> isinstance(Fraction(1), Integral) # XXX дробь False >>> Fraction(1) == 1 # даже если целое значение True
Если вы хотите проверить, что переданная строка содержит только десятичные цифры и ничего более (к примеру, нет ‘+’ , ‘-‘ , ‘ ‘ , ‘n’ символов в ней), то можно str.isdecimal использовать:
>>> ‘123’.isdecimal() True >>> ‘+123’.isdecimal() False >>> isint(‘+123’) True >>> isint(‘ 123n’) True >>> ‘ 123n’.isdecimal() False
isdecimal() можно использовать, чтобы имена файлов, содержащие цифры, в «естественном» порядке отсортировать (как Windows-проводнике). См. Python analog of natsort function (sort a list using a “natural order” algorithm).
Если хотите несколько таких чисел из ввода извлечь, можно регулярное выражение использовать:
>>> import re >>> from datetime import datetime >>> date_string = ‘2016-11-01 23:04:05′ >>> datetime(*map(int, re.findall(r’d+’, date_string))) datetime.datetime(2016, 11, 1, 23, 4, 5)
Последнее, это возможно более простой, менее строгий (и эффективный) вариант для:
>>> datetime.strptime(date_string, ‘%Y-%m-%d %H:%M:%S’) datetime.datetime(2016, 11, 1, 23, 4, 5)
Если вы хотите разрешить задавать целые числа в произвольном основании как в исходном коде Питона, то передайте base=0 :
>>> int(‘0b1110’, 0) # binary («01») 14 >>> int(‘0xcafe’, 0) # hexadecimal 51966
Источник: ru.stackoverflow.com
12 Задача: Определить число четное или нечетное при помощи Python
Написать программу, которая проверяет, является ли введенная с клавиатуры строка целым числом
Получи верный ответ на вопрос «Написать программу, которая проверяет, является ли введенная с клавиатуры строка целым числом . » по предмету Информатика, используя встроенную систему поиска. Наша обширная база готовых ответов поможет тебе получить необходимые сведения!
Новые вопросы по информатике
Напиши обратные действия. Снять — Открыть — Прилететь —
Перевести число 2-чной системы счисления в 10-чную: 1110000/2, 10001101/2
Какими знаками можно обозначить на письме звонкий и глухой удары в барабан?
1) В поезде 17 вагонов, 10-17-купейные, остальные-плацкарт. Ввести № вагона. напечатать вид. 2) Ввести 2 числа. Напечатать их частное или сообщить, что на 0 делить нельзя
Товар стоит a руб. b коп. За него заплатили c руб. d коп. Сколько сдачи требуется получить? программа паскаль
Главная » Информатика » Написать программу, которая проверяет, является ли введенная с клавиатуры строка целым числом
Источник: 4i5.ru
Целое число
Результат работы программы показан на рисунке 1. Как-то нужно определить, является ли введенное значение — вещественным значением, возможно в этом нам поможет статья о приведении типов данных.
Рисунок 1 — Целое число
// integer_number.cpp: определяет точку входа для консольного приложения. #include «stdafx.h» #include using namespace std; int main(int argc, char* argv[]) < double number; // вводимое число setlocale(LC_ALL, «rus»); cout -> «; cin >> number; if ( (number — int(number)) != 0 ) // если разность больше нуля, то введённое число — число с плавающей точкой cout
Источник: cppstudio.com