>>> from collections import OrderedDict
>>> teams = OrderedDict(zip(*[iter(lst)]*2))
>>> for team in chain.from_iterable(teams.values()):
... print(team)
...
NY Giants
NY Jets
NY Rangers
NY Islanders
NJ Devils
my_list = ["NYC Football", ["NY Giants","NY Jets"], "NYC Hockey", ["NY Rangers", "NY Islanders", "NJ Devils"]]
for item in my_list:
if type(item) == list:
for i in item:
print(i)
首先,请不要用名单的名单。您将隐藏内置列表,这将给您一个很难检测到的错误迟早。在
正如切普纳在评论中已经提到的,我强烈建议把你的列表转换成一本字典,这样你就可以清理了运动:团队地图。在
为了得到运动,问题
^{pr2}$为了得到团队,发布
您还可以使用
itertools.chain
取消此列表的嵌套:我以为字典的顺序并不重要。如果是,您可以使用
collections
模块中的OrderedDict
。在在外部列表上循环,并且只有当项是列表时,才对其进行迭代并打印其项:
另一种方式:
^{pr2}$您可以使用以下方法:
输出
^{pr2}$旁白:您不应该使用关键字
list
作为变量名。在我的示例中,我将其改为my_list
。在相关问题 更多 >
编程相关推荐