Я пишу тайну убийства - очень похоже на Clue. Я использую словари для хранения всей моей информации. Мой вопрос: есть ли способ перетасовать значения словаря, которые вытягивают из заданного диапазона целых чисел? Я хочу, чтобы каждая игра перетасовала определенные значения в словарях при запуске новой игры. Прямо сейчас я сосредоточен на размещении символов ... Я пытаюсь найти лучший способ перетасовать места персонажа после каждой игры (места [current_room] ["char"]. Как только я пойму, как это сделать, я хочу применить это к связке других аспектов игры - с идеей создания совершенно новой тайны, чтобы решить каждую игру Любые предложения приветствуютсяПеретасовка определенных значений в словаре (Python 3.5)
EDIT Спасибо за ответы, я не пытаюсь.! рандомизируйте мой весь словарь, просто измените значения определенных ключей в каждой игре. Думаю, мне может понадобиться решить эту проблему по-другому. Я обновлю это сообщение, когда у меня все получится.
ОКОНЧАТЕЛЬНЫЙ ИЗОБРАЖЕНИЕ Я меняя значение конкретных клавиш, я хочу «перетасовать», отредактировав словарь. местоположения [1] ["char"] = random.choice ([0,1,2]), а затем изменение других значений на основе ряда операторов IF из результата в random.choice. Спасибо еще раз за помощь.
locations = {
1: {"name": "bedroom",
"msg": "There is a painting on the wall. \nThe window looks out into the garden.",
"char": 2,
"item": "matches",
"west": 2},
2: {"name": "living room",
"msg" : "The room is freezing cold. The fireplace is empty.",
"char": 1,
"Item": "firewood",
"east": 1},
}
characters = {
1: {"name": "doctor crichton",
"msg": "A tall, handsome archeologist home from a dig in Africa."},
2: {"name": "the widow",
"msg": "An beautiful woman with a deep air of sadness."},
}
current_room = 1
current_char = locations[current_room]["char"]
def status():
"""updates player on info on current room"""
print("You are in the " + locations[current_room]["name"])
char_status()
def char_status():
"""compiles character infomation in current room"""
if current_char > 0:
char_room_info()
else:
print("\nThis room is empty.")
def char_room_info():
"""NPC behavior in each room"""
print(characters[current_char]["name"].title() + " is in the room with you.")
status()
'импорт случайным; random.choice (someDictionary.keys()) ' –
Возможный дубликат [Как получить случайное значение в словаре python] (http://stackoverflow.com/questions/4859292/how-to-get-a-random-value в-питон-словарь) –