Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从对应于另一个列表的列表中获取值_Python_List - Fatal编程技术网

Python 从对应于另一个列表的列表中获取值

Python 从对应于另一个列表的列表中获取值,python,list,Python,List,我有一份清单,其中包括: NewL = [(1.1,[01,02]),(1.2,[03,04]),(1.3,[05,06])] 我使用enumerate获得了上面的列表,其中包含[01,02]、[03,04]和[05,06]的方括号通常是从另一个列表中获得的。我将展示它,以防万一: L = [[01,02],[03,04],[05,06]] 最初,输出列表只是: OutputList = [1.1,1.2,1.3] 我在这两个列表上都使用了enumerate,以获得我上面所写的第一个列表

我有一份清单,其中包括:

NewL = [(1.1,[01,02]),(1.2,[03,04]),(1.3,[05,06])]
我使用enumerate获得了上面的列表,其中包含[01,02]、[03,04]和[05,06]的方括号通常是从另一个列表中获得的。我将展示它,以防万一:

L = [[01,02],[03,04],[05,06]]
最初,输出列表只是:

OutputList = [1.1,1.2,1.3]
我在这两个列表上都使用了enumerate,以获得我上面所写的第一个列表

我现在面临的问题是,假设我只想输出[05,06]的值,它是NewL的1.3。我该怎么做?我在想这样的事情:

for val in NewL:
    if NewL[1] == [05,06]:
        print NewL[0]

但这是完全错误的,因为情况可能会发生变化,不一定总是[05,06],因为它也可以获得[03,04]和[01,02]的值。我刚刚使用enumerate,因此非常感谢您的帮助。

for循环应该是这样的:

for val in NewL:
    if val[1] == [5,6]:
            print val[0]

它将打印
1.3

我不确定我是否理解这个问题,因此我将推断您需要什么:

考虑到您的两个初始列表:

L = [[01,02],[03,04],[05,06]]
OutputList = [1.1,1.2,1.3]
您可以使用以下方法生成转换后的列表:

NewL = list(zip(OutputList, L))
然后,如果要从
OutputList
检索值,请从
L
中给定1项:

val = [x for x, y in NewL if y == [05,06]][0]
但这样做会容易得多:

val = OutputList[L.index([05,06])]

请注意,如果未找到搜索项,这两个表达式都将引发一个
索引器

问题是什么?给定
L
中的一个2成员列表,您希望能够从
OutputList
中以相同索引获取浮点值吗?您可以在此处使用
dic