首页 > 解决方案 > 嵌套循环和元组

问题描述

我试图让我的代码打印出新的每个值

cats = ("Tiger","Lion","Cheetah")
canids = ("Dog","Wolf","Fox")
reptiles = ("Snake","Crocodile","Iguana")
animals = (cats, canids,reptiles)
for i in animals:
    for j in [0,-1]:
        print(i[j])

但是当我运行它时,它不包括列表的第二个值,

Tiger
Cheetah
Dog
Fox
Snake
Iguana

标签: pythonfor-looptuples

解决方案


如果要迭代一系列索引,则需要使用range. 否则,i只取值0-1

for i in animals:
    for j in range(0, len(i)): # Note the use of `range` here
        print(i[j])

虽然,因为i它本身是 atuple你可以直接迭代它。i为了family便于阅读,我在这里重命名为。

for family in animals:
    for animal in family:
        print(animal)

两者都有以下输出。

Tiger
Lion
Cheetah
Dog
Wolf
Fox
Snake
Crocodile
Iguana

推荐阅读