Python: преобразование строки в число

Одна из наиболее распространенных вопросов, связанных со строками — из преобразование в число. Как преобразовать в python строку в число мы рассмотрим в этом посте. Также сможем проверить, является ли содержимое строки числом.

В стандартной библиотеке python есть великолепные функции преобразования. Но к сожалению они ограничены. Функция int() возвращает целое число, если получает на входе строку с целочисленным значением. Та же история с float() — число с плавающей точкой. Иначе обе эти функции возвращают ошибку TypeError…

Ниже приведен полный код программы, в которой 5 функций:

  1. Чистка строки: удаляет из строки все символы, доведя содержимое до целочисленного или числа с плавающей точкой.
  2. Функция преобразования строки в целочисленное. На входе должна быть строка с любым числовым содержимым: ‘123.4’ или ‘232’
  3. Функция проверки содержимого строки на «целочисленность».
  4. Функция преобразования строки в число с плавающей точкой. На входе должна быть строка с любым числовым содержимым: ‘123.4’ или ‘232’
  5. Проверяем, является ли содержимое строки числом с плавающей точкой.

Это, на мой взгляд, наиболее распространенные задачи, которые приходится решать в области преобразования строк в числа. Далее код программы:

Задачу по проверке содержимого строки на целочисленность можно было бы решить с помощью стандартной функции isdigit(). Но это слишком просто. Для наглядности и создали функцию check_int(), которая работает так же, как и isdigit().

Ну и напоследок, если у вас есть комментарии или более интересные задачи из выше рассмотренной области, то прошу комментировать. Попробуем решить задачу вместе.

3 thoughts on “Python: преобразование строки в число

    1. В посте есть пример функции:

      def str_to_float(str):
      try:
      return float(str)
      except:
      # других вариантов не осталось. скорее всего функция приняла на входе мусор
      return 0

Leave a Comment

Ваш e-mail не будет опубликован.