Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: Как в Python проверить, является ли строка числом?

  1. Как в Python проверить, является ли строка числом?

    Здорово, ребята! Столкнулся с такой проблемкой, нужно проверить, является ли строка числом в Python.
    Я новичок и пока что плохо представляю, как это можно реализовать. Есть какие-нибудь простые и эффективные
    способы сделать это? Может есть какие-то встроенные методы или библиотеки для этого дела? В общем, буду рад любой
    помощи и коду. Дайте, плз, примеры кода и пояснения, как они работают. Спасибо!



  2. Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat

    А ТАКЖЕ: Канал о Python, статьи и книги ==>>
    @pythoneer_ru

  3. Всем привет! Я тут недавно тоже с этим столкнулся. Самый быстрый способ это использовать try-except блок.

    [PHP]

    def is_number(s):

    try:

    float(s)

    return True

    except ValueError:

    return False



    Эта функция сначала пытается привести строку к числу с плавающей запятой, если не выходит — ловит ошибку и
    возвращает False. Вроде работает норм, рекомендую!

  4. Цитата Сообщение от TaleWarrior909
    Всем привет! Я тут недавно тоже с этим столкнулся. Самый быстрый способ это использовать try-except блок.

    [PHP]

    def is_number(s):

    try:

    float(s)

    return True

    except ValueError:

    return False



    Эта функция сначала пытается привести строку к числу с плавающей запятой, если не выходит — ловит ошибку и
    возвращает False. Вроде работает норм, рекомендую!
    Класс, прям по делу! Все гениальное просто. Try-except — наше все!

  5. Еще можно использовать метод isdigit(), он проверяет, состоит ли строка только из цифр. Но учти, что минусовые
    и дробные числа он не поймет.

    [PHP]

    s = '12345'

    print(s.isdigit()) # True



    Так что подходит не всегда, но для некоторых задач — топчик.

  6. Цитата Сообщение от CometDefender202
    Еще можно использовать метод isdigit(), он проверяет, состоит ли строка только из цифр. Но учти, что минусовые
    и дробные числа он не поймет.

    [PHP]

    s = '12345'

    print(s.isdigit()) # True



    Так что подходит не всегда, но для некоторых задач — топчик.
    Да, для целых чисел самое то. Но вот с дробными низачет.

  7. Эй, еще можно юзать регулярки! Ловко и стильно.

    [PHP]

    import re


    def is_number(s):

    pattern = re.compile(r'^\-?\d+(\.\d+)?$')

    return bool(pattern.match(s))



    Тут проверяем и положительные, и отрицательные, и дробные. Пилите!

  8. Цитата Сообщение от Yakoo
    Эй, еще можно юзать регулярки! Ловко и стильно.

    [PHP]

    import re


    def is_number(s):

    pattern = re.compile(r'^\-?\d+(\.\d+)?$')

    return bool(pattern.match(s))



    Тут проверяем и положительные, и отрицательные, и дробные. Пилите!
    Ого, мощный способ. Регулярки — это сила, если знаешь, как юзать.

  9. А еще есть встроенная тулза в pandas! Если не против юзать библиотеку, то вот так:

    [PHP]

    import pandas as pd


    def is_number(s):

    return pd.to_numeric(s, errors='coerce').notna()



    pandas то_numeric() метод сконвертит строку в цифру, а если не получится, вернет NaN. Так что удобно, если
    ты уже пользуешься pandas для анализа данных.

  10. Цитата Сообщение от MaxIce
    А еще есть встроенная тулза в pandas! Если не против юзать библиотеку, то вот так:

    [PHP]

    import pandas as pd


    def is_number(s):

    return pd.to_numeric(s, errors='coerce').notna()



    pandas то_numeric() метод сконвертит строку в цифру, а если не получится, вернет NaN. Так что удобно, если
    ты уже пользуешься pandas для анализа данных.
    О, крутяк! Для тех, кто в pandas уже давно роет, вообще супер.

Страница 1 из 2 12 ПоследняяПоследняя