0

У меня есть список json-файлов, в которых одно поле имеет выражения. Я хочу проверить эти поля, используя python. Я хочу проверить, написаны ли они в правильном формате или нет, например. Сценарий должен давать ошибку, если выражение похоже на это: «= <» вместо «< =». И я хочу найти все возможности такой ошибки.Проверка логического/логического выражения в Python

{ 
    "name": "test", 
    "id": "1", 
    "description": "Its a test", 
    "expressions": "{var_a} = 5", 
    "expressions": "{var_b} = 6", 
    "expressions": "{var_a} => {var_b}", 
    "unittest": "test.txt" 
} 

Я хочу, чтобы мой скрипт python поймал эту ошибку.

ответ

0

Вы можете использовать регулярное выражение для этого. Я взял предоставленную линию, и что-то в этом направлении может помочь вам.

import json 
import re 

data = '{ "name": "test", "id": "1", "description": "Its a test", "expressions": "{var_a} = 5", "expressions": "{var_b} = 6", "expressions": "{var_a} => {var_b}", "unittest": "test.txt" }' 

pData = json.loads(data) 

if re.search('>=',pData['expressions']): 
    print 'OK' 
else: 
    print 'Error' 
+0

Это статический путь, я хочу, чтобы быть динамичными, так как у меня есть около 2000 таких JSon файлов, и я не знаю, какие ошибки пользователь может сделал в этом выражении. Поэтому я просто хочу проверить правильность формата выражения. –

+0

Вы только проверяете «выражение»? Если да, то как получить все возможные операторы в списке и проверить в нем файл в файле? – padme

+0

Да, это может быть решение принять все допустимые выражения в списке, и я не получил ваш последний комментарий. Я назначаю a = 5 и B = 6, а затем сравниваю обе переменные. Последнее выражение должно быть {var_a}> = {var_b}. –

Смежные вопросы