首页 > 解决方案 > Python循环遍历列表

问题描述

我有一个名为:

word_list_pet_image = [['beagle', '01125.jpg'], ['saint', 'bernard', '08010.jpg']]

此列表中有更多数据,但我保持简短。我正在尝试遍历此列表并检查该单词是否只是字母字符,如果这是真的,将该单词附加到一个名为的新列表中

pet_labels = []

到目前为止,我有:

word_list_pet_image = []
for word in low_pet_image:
    word_list_pet_image.append(word.split("_"))

for word in word_list_pet_image:
    if word.isalpha():
        pet_labels.append(word)
        print(pet_labels)

例如,我试图将单词beagle放入列表 pet_labels,但跳过01125.jpg。见下文。

pet_labels = ['beagles', 'Saint Bernard']

我收到一个属性错误

AtributeError:“列表”对象没有属性“isalpha”

我确信这与我没有正确地遍历列表有关。

标签: pythonlistloopsfor-loop

解决方案


看起来您正在尝试在每个子列表中加入字母单词。列表理解在这里会很有效。

word_list = [['beagle', '01125.jpg'], ['saint', 'bernard', '08010.jpg']]

pet_labels = [' '.join(w for w in l if w.isalpha()) for l in word_list]

>>> ['beagle', 'saint bernard']

推荐阅读