Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import re
- demon_data = input().split(", ")
- demon_book = {}
- pattern = r"([+-]?[\d+]\.?[\d+]?)"
- for demon in demon_data:
- multi_divide = [x for x in demon if x in "/*"]
- demon_hp = 0
- for i in demon:
- if not i.isdigit() and i not in "+-*/.":
- demon_hp += ord(i)
- numbers = re.finditer(pattern, demon)
- current_demon_damage = []
- for i in numbers:
- current_demon_damage.append(float(i.group()))
- demon_damage = (sum(current_demon_damage))
- for symbol in multi_divide:
- if symbol == "*":
- demon_damage *= 2
- elif symbol == "/":
- demon_damage /= 2
- demon_book[demon] = [demon_hp, demon_damage]
- sorted_demon_book = {k: v for k, v in sorted(demon_book.items())}
- for stat in sorted_demon_book:
- print(f"{stat} - {sorted_demon_book[stat][0]} health, {sorted_demon_book[stat][1]:.2f} damage ")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement