检查随机选择的字典值,如果匹配则重新启动

时间:2018-10-27 17:14:17

标签: python dictionary unique-values

因此,我正在创建一种基于文本的“难以理解的Python谋杀神秘游戏”……这可能真的很简单,但我无法弄清楚。

本质上,我在选择线索的位置,每个位置有16个选项,4个大位置和4个子位置。但是我不希望任何线索与另一线索位于同一位置。

目前,我为每个项目及其后续位置都创建了字典,但有时会选择相同的位置。希望有帮助,谢谢!

def determine_items():
    items_needed = {}
    items = ["weapon", "Clue #1", "Clue #2", "Evidence"]
    print(items_needed)
    for i in items:
        hidden_sub = [0.1,0.2,0.3,0.4]
        hidden_super = [1,2,3,4]
        selected_super = random.choice(hidden_super)
        Selected_sub = random.choice(hidden_sub)
        exact =  selected_super + Selected_sub
        if exact == items_needed.values():
             items_needed.clear()
             determine_items()
        else:
            print("No Duplicates?")
        items_needed[i] = exact

1 个答案:

答案 0 :(得分:0)

这是我根据您的回答提出的

import random
def determine_items():
    items_needed = {}
    items = ["weapon", "Clue #1", "Clue #2", "Evidence"]
    possible_locations = [1.1,1.2,1.3,1.4,2.1,2.2,2.3,2.4,3.1,3.2,3.3,3.4,4.1,4.2,4.3,4.4]
    for i in items:
        exact = random.choice(possible_locations)
        possible_locations.remove(exact)
        items_needed[i] = exact
    print(items_needed)

determine_items()