Нужно написать скрипт на Python для "склейки" id-карт по правилам
2 000 руб. за проект
Есть массив данных:
player_parent_cards = [
{'card_detail_id': 538, "xp": 27, 'level': 3,'uid': 'C10-538-001'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-002'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-003'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-004'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-005'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-006'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-007'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-001'},
{'card_detail_id': 522, "xp": 9, 'level': 3,'uid': 'C10-522-002'},
{'card_detail_id': 522, "xp": 5, 'level': 2,'uid': 'C10-522-003'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-004'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-005'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-006'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-007'},]
Таких строк может быть много.
card_details = {
"common": {"id": [538,539,543,544]},
"rare": {"id": [513,519,525,537]},
"epic": {"id": [512,518,]},
"legend": {"id": [511,522,]},
В card_details указываются card_detail_id, которые необходимо обработать, определенные id соответствуют группам (common, rare и т.д.)
combine_rates = {
"common": {"level_quantity": [1, 5, 14, 30, 60, 100, 150, 220, 300, 400]},
"rare": {"level_quantity": [1, 5, 14, 25, 40, 60, 85, 115]},
"epic": {"level_quantity": [1, 4, 10, 20, 32, 46]},
"legend": {"level_quantity": [1, 3, 6, 11]},
}
combine_rates - правила для обьединения карт.
Вывод скрипта должен выглядеть следующим образом (для указанных карт из player_parent_cards):
['C10-538-001','C10-538-002','C10-538-003','C10-538-004']
['C10-522-002','C10-522-001','C10-522-004']
['C10-522-003','C10-522-005']
player_parent_cards = [
{'card_detail_id': 538, "xp": 27, 'level': 3,'uid': 'C10-538-001'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-002'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-003'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-004'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-005'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-006'},
{'card_detail_id': 538, "xp": 1, 'level': 1,'uid': 'C10-538-007'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-001'},
{'card_detail_id': 522, "xp": 9, 'level': 3,'uid': 'C10-522-002'},
{'card_detail_id': 522, "xp": 5, 'level': 2,'uid': 'C10-522-003'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-004'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-005'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-006'},
{'card_detail_id': 522, "xp": 1, 'level': 1,'uid': 'C10-522-007'},]
Таких строк может быть много.
card_details = {
"common": {"id": [538,539,543,544]},
"rare": {"id": [513,519,525,537]},
"epic": {"id": [512,518,]},
"legend": {"id": [511,522,]},
В card_details указываются card_detail_id, которые необходимо обработать, определенные id соответствуют группам (common, rare и т.д.)
combine_rates = {
"common": {"level_quantity": [1, 5, 14, 30, 60, 100, 150, 220, 300, 400]},
"rare": {"level_quantity": [1, 5, 14, 25, 40, 60, 85, 115]},
"epic": {"level_quantity": [1, 4, 10, 20, 32, 46]},
"legend": {"level_quantity": [1, 3, 6, 11]},
}
combine_rates - правила для обьединения карт.
Вывод скрипта должен выглядеть следующим образом (для указанных карт из player_parent_cards):
['C10-538-001','C10-538-002','C10-538-003','C10-538-004']
['C10-522-002','C10-522-001','C10-522-004']
['C10-522-003','C10-522-005']
Отзывы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.