【发布时间】:2021-11-04 07:29:31
【问题描述】:
我有以下动态数据,但以下是可能的示例:
# An incoming List of lists with only ints
# For exampe the incoming_list could be:
incoming_list = [[1,2]. [3]]
# The indexes are like so:
0: [1,2]
1: [3]
然后我有一个 check_list,其中包含一些示例数据(将是动态的),如下所示:
# A List[int] for check_list
check_list= [3]
然后,如果任何传入列表数据在其索引中,我需要获取传入列表中的第一个 int:
# If the following were input:
incoming_list = [[1,2]. [3]]
check_list= [3]
# Then a new_list would be:
new_list = [3] because incoming_list has a list with 3 in it, and the
first element of that list is 3
##############################################################
# Another example ff the following were input:
incoming_list = [[1,2]. [3]]
check_list= [2,3]
# Then a new_list would be:
new_list = [1,3] because incoming_list has a 2 in the first index and
its first value is 1 and because incoming list has a 3 in the second index
and its first and only value is 3
我试图用一组列表组合来做到这一点,但我认为 List of List 部分搞砸了:
new_list = list(set(v for k, v in incoming_lists if int(k) in check_list))
有什么方法可以让这些干净优雅吗?
【问题讨论】:
-
“因为incoming_list 在第一个索引中有一个2,它的第一个值为1,并且因为传入列表在第二个索引中有一个3,它的第一个也是唯一的值是3”我实际上无法理解从这个描述来看,规则是什么。请尝试更清楚地沟通
-
如果没有包含该值的列表怎么办,如果有多个怎么办。请提供一个涵盖所有可能情况的一般示例。
标签: python python-3.x python-3.7