Форум сайта python.su
StazotКонечно недопоняли. Или мы недопоняли. У вас вход таблица. Выход тоже таблица. Откуда тут xml взялся?
Может я что то не допонял?
Шаровые опоры™555;555;SBN252;555-SB-N252_опора шаровая!\ Nissan Navara D40T 07>;SBN252_555
Двигатель;Шаровые опоры;опора шаровая;Nissan;Navara, D40T 07;SBN252_555
StazotВложенность описать можно миллионом способов. xml Не самый удачный. Кроме того тут вложенность на мой взгляд небольшой и не очень важный довесок без которого легко можно обойтись.
я просто подумал что для того что бы вложенность описать удобнее Xml формат использовать
Отредактировано doza_and (Сен. 18, 2017 23:30:30)
Офлайн
vic57
Спасибо но не то, мне нужно в таком виде
Словарь = {'Категория1':{ 'Подкатегория1':[ "Критерий1", "Критерий2",...,"критерийn"], 'Подкатегория2':[ "Критерий2", "Критерий2",...,"критерийn"]}, 'Категория2':{ 'Подкатегория1.2':[ "Критерий1", "Критерий2",...,"критерийn", 'Подкатегория2.2':[ "Критерий2", "Критерий2",...,"критерийn"]}}}
Офлайн
doza_and
Дело в том что глубина вложености для простоты взята за три ступени. но вот критерив может быть много
Структура как раз древовидная
категория
подкатегория
критерий
критерий
критерий
критерий
критерий
подкатегория
критерий
критерий
категория
подкатегория
критерий
критерий
критерий
подкатегория
критерий
критерий
Офлайн
Stazot
непонятно, что ты изобретаешь
~ admin$ pip search xml2dict nitrate_xml2dict (0.2.2.1) - Convert between XML String and Python Dict nitratexml2dict (0.2.2) - Convert between XML String and Python Dict pyxml2dict (1.0.1) - Convert XML to python Dict XML2Dict (0.2.2) - Convert between XML String and Python Dict xml2dictnitrate (0.2.2) - Convert between XML String and Python Dict
Офлайн
Stazot
Идея проста. есть CSVшный файл
Шаровые опоры™555;555;SBN252;555-SB-N252_опора шаровая!\ Nissan Navara D40T 07>;SBN252_555
Наконечники рулевых тяг™555;555;SE1651L;555-SE-1651L_наконечник рулевой левый!\ Mazda 3 BK 03>;SE1651L_555;SE-1651L
И так порядка 300 000 строк.
Надо привести к след виду
Двигатель;Шаровые опоры;опора шаровая;Nissan;Navara, D40T 07;SBN252_555
Двигатель;Наконечники рулевых тяг;наконечник рулевой левый;Mazda;3,BK,03
Шаровые опоры™555;555;SBN252;555-SB-N252_опора шаровая!\ Nissan Navara D40T 07>;SBN252_555
<root>
<category name = "Электрика">Электрика
<sub_category name = 'Лампы'>
<element>H3</element>
<element>H4</element>
<element>H6</element>
<element>галоген</element>
<element>Ксенон</element>
</sub_category>
<sub_category name = 'Реле'> Реле
<element>реле зажигания</element>
<element>реле поворотников</element>
</sub_category>
</category>
...
Двигатель;Шаровые опоры;опора шаровая;Nissan;Navara, D40T 07;SBN252_555
Отредактировано py.user.next (Сен. 19, 2017 02:35:17)
Офлайн
StazotЯ так понимаю как его разделять пока не обсуждается. По крайней мере понять как вы это собираетесь делать невозможно и вы про это не рассказываете.
Основная задача разделить список на 10-12 основных категорий. 5-20 подкатегорий
Stazot
Если не XML то что? Я просто ничего подходящего не знаю. Можно конечно в скрипт вшить список, но это не интересно.
# а это комментарий Категория1 : Подкатегория1 : [Критерий1, Критерий2, критерий3] Подкатегория2 : [Критерий1, Критерий2, критерий3] Категория2 : Подкатегория1.1 : [Критерий1, Критерий2, "критерий3 с запятыми,,,"] Подкатегория1.2 : [Критерий1, Критерий2, критерий3]
import yaml with open("some.yaml","r", encoding="utf-8") as f: category_data = yaml.load(f)
Категория1 : цена : 35.5 количество : 5 Категория2 : цена : 80.5 количество : 5
s = 0 for v in category_data.values(): s+= v["цена"] * v["количество"]
s+= float(v["цена"]) * int(v["количество"])
Отредактировано doza_and (Сен. 19, 2017 07:16:37)
Офлайн
doza_and
Спасибо про YAML не знал
Офлайн
Уже не по теме, но может кто кинет ссылку как реализовать поиск как web поисковик что бы искать по фразе полностью и словам из фразы по отдельности.
Интересно было бы почитать. Что то случайно в голову взбрела мысля.
Офлайн
Всем спасибо. Закрываю тему
Офлайн