尝试使用两种不同的用户输入来从Python中的两个列表中获取信息

时间:2019-01-18 06:43:18

标签: python arrays python-3.x list

我在尝试从两个列表中获取两个用户输入时遇到问题。我将发布代码并尝试解释。

我有多个输入供用户选择。在这种情况下,它选择: 1.)机架 2.)该机架上的FDP 3.)该FDP内的MOD

我对它们进行了一些数学运算以获得“唯一标识符变量”,然后使用该变量从列表中选择一个值。这是我遇到问题的地方。我希望将该列表中的值添加到下一个用户输入中,然后将它们组合起来以查看另一个列表。示例:

#this is the list that looks at unique identifier variable. say I got 153, I would get water
selector = {
    39:"test",
    43:"r01c07f02-mb",
    47:"r01c07f03-mc",
    153:"water"
}

然后,我希望在“ water”中添加[x](其中x是最后一个用户输入),然后查看其他列表:

water = {
    1:{'Customer':'CID'},
    2:{'Customer2':'CID2'},
    3:"Third Option"
}

otherList = {
    1:{'Customer3':'CID3'},
    2:{'Customer4':'CID4'},
    3:"TESTERS TESTEST"
}

因此,如果用户获得153作为唯一标识符,然后在最后一个输入中输入3,则希望打印“第三选项”。但是,我只能得到它来打印'water [3]'或任何选项,但是我不能得到它来实际打印值IN water [3]。这是我用来组合它们的代码,我知道这是错误的,但我不知道如何。

def getInfo(arg1):
    testVar = "blank" #just bs for testing
    testVar = selector[arg1]
    return testVar #returns whatever is in selector[arg1] spot, the unique identifier (uIdent) is passed as arg1 below


u = str(sInfo) #turning the last user input into a string because you cant add str to int (think this is where I am messing up)
conCat1 = "concat1 blank"
print("Here is first try: ")
print(conCat1) #will print 'concat1 blank'
conCat1 = getInfo(uIdent) + '[' + u + ']' 
print("Here is second try: ") #will print whatever the value was next to unique ident in the selector list, + [sInfo], so water[3] or test[1] for examples
print(conCat1)

任何人都有一些想法可以帮助我或为我指明正确的方向吗?请让我知道是否需要其他信息,或者我应该发布整个代码(仅150行左右的业余代码)。我不想把这个帖子搞得比我确定已经通过发布完整的代码来使混乱多了,但是如果需要的话,还是会的!

编辑:基本上,有一种方法可以将变量[x]的类型字符串转换为dict类型,以便它输出值IN变量[x]而不是实际的字符串变量[x]

0 个答案:

没有答案