Я думаю, что это общий вопрос, однако в моем случае я работаю с PyQt5 и Python 3.
Я устанавливаю небольшое программное обеспечение, которое записывает данные с помощью измерительного устройства.Перед измерением я должен поместить некоторые данные, которые затем проверяются программным обеспечением на корректность, например, заполнено ли обязательное поле или является входным значением в допустимом диапазоне, или, например, у меня есть начальное значение A
,конечное значение B
и ширина шага W
, поэтому я должен проверить, если W<=B-A
Мой вопрос: какой самый элегантный способ проверки формы?Я могу просто сделать это один за другим:
class Form:
...
def check_form(self):
if self.fieldA.text() == "":
return False
if not self.check_range(self.fieldB.text()):
return False
# Check fields one by one...
...
def check_range(self, val):
if val > self.max_val:
return False
else:
return True
Но на самом деле, это не очень красиво, это повторяющийся код и много чего нужно написать и сложно поддерживать.Итак, мой вопрос, есть ли лучший способ?Одна идея, которая возникла, состояла в том, чтобы определить объект (возможно, dict), который содержит всю соответствующую информацию о форме, такую как метка, значение по умолчанию, условия и т. Д. Я могу поместить эту форму в файл json, а затем просто загрузить егои даже создать форму, когда мне это нужно.Может быть, могут возникнуть некоторые препятствия, особенно мне нужно подумать, как обращаться с выпадающими списками, но я думаю, что это по крайней мере один подход.
В любом случае.100% кто-то еще боролся с этой проблемой до меня, так что, возможно, есть стандартный способ, как решить эту проблему элегантным способом.