【问题标题】:Creating a certain hash map from two lists从两个列表创建某个哈希映射
【发布时间】:2016-06-07 20:15:29
【问题描述】:

我意识到您可能会很快将其标记为重复,但我已经查看并找不到任何可以帮助解决我在生成两个列表之间的哈希图时遇到的特定问题。

我正在处理许多变量,所以我将简化它:我有一个标签列表vars = ['L1', 'L2']。我想创建第二个列表values = [rL1, rL2],其中rL1rL2 是分配给上述标签的随机(未知)整数,由(例如)rL1 = random.randit(0,10) 定义。

我的目标是创建一个表单的哈希映射:

{'L1' : rL1, 'L2' : rL2}.

请注意,值(整数)不应包含在引号中。

现在我有:

def genSampVal(vars):
     rL1 = random.randit(0,10)
     rL2 = random.randit(0,20)
     values = ["r" + vars[i] for i in xrange(0, len(vars))]
     print dict(zip(vars, values))
vars = ['L1', 'L2']
genSampVal(vars)

但这给了我

{'L1' : 'rL1', 'L2' : 'rL2'}.

我试过玩.join等等,但我得到了一些超级奇怪的东西。

任何帮助将不胜感激!

编辑:为了向您展示我想要的内容,这是一个持续的示例。如果我自己创建哈希图,我可以设置

map = {'L1' : rL1, 'L2' : rL2}

打印地图会产生类似的东西

{'L1' : 8, 'L2' : 13}.

由于我要处理很多很多变量,并且我不想手动输入我的哈希映射,所以我正在寻找一个可以为我处理这个问题的函数。我构造的那个似乎不记得它的值是整数。

【问题讨论】:

    标签: list python-2.7 function hashmap


    【解决方案1】:

    如果你的意思是 {'L1': random_value, 'L2': random_value},顺便说一下它的 random.randint

    def genSampVal(vars):
        values = [random.randint(0,10) for i in xrange(len(vars))]
        return dict(zip(vars, values))
    
    
    vars = ['L1', 'L2']
    print genSampVal(vars)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多