С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Python
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Headmaster
1 / 1 / 5
Регистрация: 08.05.2013
Сообщений: 122
1

Проверить что переменная является любой строкой или любым числом

26.06.2016, 14:52. Просмотров 923. Ответов 10
Метки нет (Все метки)

Можно ли в Python (не через type) проверить, является ли переменная любой строкой\любым числом.
Может как-то через регулярки? но я не понимаю как с помощью них сделать.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2016, 14:52
Ответы с готовыми решениями:

Ошибка. Индикатор строки должен быть целым числом, не строкой
s = 'ejfoiw ewrijf oef aa 2 11 q 21 ' i = 0 for i in s: if s == '1'...

Как проверить, что переменная является числом?
Добрый день, уважаемые. Скучая на работе и просто решив побаловаться BAT, я...

Проверить является ли переменная числом
Проверить, является ли переменная числом в C++ Builder не охота в цикл...

Как проверить, является ли переменная числом
Есть структура точки struct Point { double x; double y; }; Есть вектор...

Определить, чем является строка – целым числом, вещественным, датой или текстовой строкой
Помогите разобраться.. Это задание на семинар - Вобщем здесь меня...

10
alex925
2675 / 2281 / 631
Регистрация: 19.03.2012
Сообщений: 8,831
26.06.2016, 15:13 2
isinstance если тебе нужно проверить строка это или число
0
Headmaster
1 / 1 / 5
Регистрация: 08.05.2013
Сообщений: 122
26.06.2016, 15:16  [ТС] 3
Цитата Сообщение от alex925 Посмотреть сообщение
isinstance если тебе нужно проверить строка это или число
Я хочу сделать проверку вида:
Python
1
2
if var == любая_строка:
...
0
alex925
2675 / 2281 / 631
Регистрация: 19.03.2012
Сообщений: 8,831
26.06.2016, 15:28 4
А зачем тебе это понадобилось? Вообще в python такие проверки на тип данных не приветствуются.
0
Headmaster
1 / 1 / 5
Регистрация: 08.05.2013
Сообщений: 122
26.06.2016, 15:41  [ТС] 5
Цитата Сообщение от alex925 Посмотреть сообщение
А зачем тебе это понадобилось? Вообще в python такие проверки на тип данных не приветствуются.
Из базы данных надо извлечь данные по нескольким фильтрам. Использую:
Python
1
имя_таблицы.objects.filter(name=name, surname = любая_строка, ...)
Не хотел логику менять, но похоже придется. Видимо где-то до этого ошибочным путём пошёл.
0
alex925
2675 / 2281 / 631
Регистрация: 19.03.2012
Сообщений: 8,831
26.06.2016, 15:48 6
Так и в чем проблема? Откуда поступают данные в твою гипотетическую переменную? Почему ты сомневаешься, что туда попадет НЕ строка?
0
Headmaster
1 / 1 / 5
Регистрация: 08.05.2013
Сообщений: 122
26.06.2016, 15:49  [ТС] 7
html,
если подробнее:
на каждое поле стоит checkbox, если активен - получаю значение переменной, если нет - не могу придумать с чем сравнить (post-запрос ничего не возвращает)

Ну не писать же на каждую комбинацию чекбоксов отдельное получение данных
0
alex925
2675 / 2281 / 631
Регистрация: 19.03.2012
Сообщений: 8,831
26.06.2016, 16:11 8
Лучший ответ Сообщение было отмечено Headmaster как решение

Решение

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

Если очень по простому, то проверять, что вероятно это фамилия можно так (но эта регулярка допускает строку из одних цифр)
Python
1
2
3
4
5
6
import re
 
data = ['Иванов', 'Сидоров', 'Петров3', 'Петров@']
for i in data:
    res = re.fullmatch('[a-zA-Zа-яА-Я0-9]*', i)
    print(i, True if res else False)
Цитата Сообщение от Headmaster Посмотреть сообщение
Ну не писать же на каждую комбинацию чекбоксов отдельное получение данных
А причем тут checkbox? Они сюда вообще ни как не относятся, они в твоей задаче тебе даже близко не нужны.
0
Jabbson
Эксперт по компьютерным сетям
3353 / 2427 / 747
Регистрация: 03.11.2009
Сообщений: 7,759
Записей в блоге: 3
26.06.2016, 16:22 9
Я тоже как-то не проникся почему речь идёт про чекбоксы. Может опишите нам всю свою проблему? Потому что пока вопрос и задача в моей голове друг с другом не коррелируют...
0
Headmaster
1 / 1 / 5
Регистрация: 08.05.2013
Сообщений: 122
26.06.2016, 16:24  [ТС] 10
форма на странице поиска должна иметь все параметры перечисленные в модели + содержит checkbox для каждого поля, говорящий нужно ли использовать это поле при фильтрации или нет.
0
alex925
2675 / 2281 / 631
Регистрация: 19.03.2012
Сообщений: 8,831
26.06.2016, 16:27 11
Цитата Сообщение от Headmaster Посмотреть сообщение
содержит checkbox для каждого поля, говорящий нужно ли использовать это поле при фильтрации или нет.
Бессмысленное занятие. Если поле не заполнено, значит его не нужно использовать (то есть будет передана на сервер пустая строка или вообще оно не будет упоминаться), если какие-то данные переданы, то проверяем их на допустимость и выполняем запрос.
0
26.06.2016, 16:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.06.2016, 16:27

Проверить, является ли введенное значение числом или нет
Здрасти. как проверить число на то, является ли оно им или нет. Пробовал с...

Как проверить, что строка является вещественным числом?
например задана строка string str="6.9" и как проверить что вещественное? ...

Строка: Проверить, является ли заданный символ буквой, числом или специальным символом?
Напишите программу, в которой пользователь должен ввести 1 символ. По окончанию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru