python - 如何从Python子列表中提取值

标签 python list nested

data_sets = [
    ['O'],
    ['X'],
    # These data sets put Sheet A in all possible locations and orientations
    # Data sets 2 - 9
    ['O', ['Sheet A', 'Location 1', 'Upright']],
    ['O', ['Sheet A', 'Location 2', 'Upright']],
    ['O', ['Sheet A', 'Location 3', 'Upright']],
    ['O', ['Sheet A', 'Location 4', 'Upright']],
    ['O', ['Sheet A', 'Location 1', 'Upside down']],
    ['O', ['Sheet A', 'Location 2', 'Upside down']],
    ['O', ['Sheet A', 'Location 3', 'Upside down']],
    ['O', ['Sheet A', 'Location 4', 'Upside down']]
    ]

for each in data_sets:
    if 'Sheet A' in each:
        print('1')

当我运行这个时,它不会打印任何内容,因为我不认为它会遍历所有子列表。我怎样才能让它发挥作用?

最佳答案

您可以使用itertools.chain.from_iterable

import itertools
for each in data_sets:
    if "Sheet A" in itertools.chain.from_iterable(eeach):
        print("1")

1
1
1
1
1
1
1
1

这里有一个live example

关于python - 如何从Python子列表中提取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46151859/

相关文章:

c - 如何在链接列表中添加单词,同时检查和更新c中单词的频率

python - 如何使用 Python 打印嵌套字典中的特定整数变量?

python - 编目词典列表

python - 多变量for循环python

python - Tkinter Cxfreeze 错误

python - 如何在 Windows 中下载并安装 Pandas 和 Numpy for PyPy

python - 列表 2 中的哪些数字大于和小于列表 1 中的每个数字

java - 如何从两列 txt 文件创建带有 <Integer, List<Integer>> 的 TreeMap

c# - 类嵌套和访问修饰符

python - 查找正则表达式匹配的字符串长度