Словари - как характеристики персонажа в меню атрибутов. Каждому параметру (ключу) соответствует своё значение!
# Характеристики персонажа
hutao = {
"имя": "Ху Тао",
"элемент": "Пиро",
"уровень": 90,
"созвездия": 1
}
# Статы артефакта
artifact = {
"тип": "Корона мудрости",
"сет": "Горящая алая ведьма",
"основной_стат": "Крит урон",
"доп_статы": {
"крит_шанс": 3.9,
"здоровье": 568,
"мастерство": 40
}
}
# Получение значений
element = hutao["элемент"] # "Пиро"
level = hutao.get("уровень", 1) # 90 (1 если ключа нет)
# Изменение и добавление
hutao["созвездия"] = 2 # Изменение значения
hutao["оружие"] = "Посох Хомы" # Добавление пары
# Удаление
removed_stat = artifact.pop("тип") # Удаляет и возвращает значение
del hutao["созвездия"] # Просто удаляет
# Проверка наличия ключа
has_weapon = "оружие" in hutao # True
# Получение всех ключей и значений
stats = list(artifact.keys()) # ["тип", "сет", ...]
values = list(artifact.values()) # ["Корона мудрости", ...]
# Обход словаря
for key, value in hutao.items():
print(f"{key}: {value}")
# Обновление словаря
new_stats = {"талант_А": 9, "талант_Е": 9}
hutao.update(new_stats) # Добавляет или обновляет пары
Создайте систему управления артефактами, которая позволит:
Пример артефакта:
{
"название": "Корона мудрости",
"редкость": 5,
"уровень": 20,
"сет": "Церемония древней знати",
"тип": "Головной убор",
"основной_стат": {
"тип": "Крит шанс",
"значение": 31.1
},
"доп_статы": [
{"тип": "Крит урон", "значение": 21.8},
{"тип": "Мастерство", "значение": 40},
{"тип": "Защита%", "значение": 5.8},
{"тип": "HP", "значение": 568}
]
}
Реализуйте функции для:
# Приоритетные статы для персонажей
character_priorities = {
"Ху Тао": ["HP%", "Пиро урон", "Крит шанс", "Крит урон"],
"Райдэн": ["Восст энергии", "Электро урон", "Крит шанс", "Крит урон"]
}
def calculate_artifact_value(artifact, character):
value = 0
priorities = character_priorities[character]
# Подсчёт ценности на основе приоритетов...