Untitled

 avatar
unknown
plain_text
3 years ago
1.4 kB
3
Indexable
import json
import datetime

id = 'id'
name = 'name'
price = 'price'
date = 'date'

data = json.loads(input())

filters = {}


def resolve(s):
    filter, arg = s.split()
    if filter == 'PRICE_LESS_THAN':
        filters[filter] = int(arg)
    elif filter == 'DATE_AFTER':
        filters[filter] = datetime.datetime.strptime(arg, "%d.%m.%Y")
    elif filter == 'NAME_CONTAINS':
        filters[filter] = arg
    elif filter == 'PRICE_GREATER_THAN':
        filters[filter] = int(arg)
    elif filter == 'DATE_BEFORE':
        filters[filter] = datetime.datetime.strptime(arg, "%d.%m.%Y")


resolve(input())
resolve(input())
resolve(input())
resolve(input())
resolve(input())

items = []

for d in data:
    if filters['PRICE_LESS_THAN'] >= d[price] >= filters['PRICE_GREATER_THAN'] and filters[
        'DATE_AFTER'] <= datetime.datetime.strptime(d[date], "%d.%m.%Y") <= filters['DATE_BEFORE'] and (
            (filters['NAME_CONTAINS']).lower() in d[name].lower()):
        items.append(d)

items.sort(key=lambda a: a[id])
print(json.dumps(items))


def process(filter, arg):
    data2 = []
    if filter == 'PRICE_LESS_THAN':
        for item in data:
            if item[price] <= arg:
                data2.append(item)
        pass
    elif filter == 'DATE_AFTER':
        pass
    elif filter == 'NAME_CONTAINS':
        pass
    elif filter == 'PRICE_GREATER_THAN':
        pass
    elif filter == 'DATE_BEFORE':
        pass
Editor is loading...