Во-первых, давайте уменьшим ваш пример; структура класса несущественна для проблемы.
gold = 10
stored_armor = {"Stored Armor: ": ["rash leggings"]}
weapons = {"Weapons: ": ["wooden_sword", "mythrill_staff"]}
potions = {"Potions: ": ["HP potion"]}
ui_gold = {"Gold: ": gold}
inv = [
stored_armor,
weapons,
potions,
ui_gold
]
Теперь вы пытаетесь распечатать список элементов без пунктуации, которая естественным образом достигается в выбранном вами хранилище данных. Чтобы сделать это, вы должны добраться до внутри , где хранится, и переформатировать элементы так, как вы хотите их видеть.
В этом случае это не qwuite тривиально, так как вы выбрали неоднородную структуру для рюкзака вашего игрока: список словарей, значения которых имеют разные типы. Я решил эту проблему, поочередно просматривая список (после исправления неверно введенного имени переменной) и проверяя тип значения перед построением вывода.
for element in inv:
for key, val in element.items():
if type(val) == list:
inventory = ' '.join([item for item in val])
else:
inventory = str(val)
print(key, inventory)
Выход:
Stored Armor: rash leggings
Weapons: wooden_sword mythrill_staff
Potions: HP potion
Gold: 10