name_box = ['<span class="a-icon-alt">Facebook</span>',
'<span class="a-icon-alt">Twitter</span>',
'<span class="a-icon-alt">Pinterest</span>',
'<span class="a-icon-alt">Free Shipping for Prime Members</span>',
'<span class="a-icon-alt">4.5 out of 5 stars</span>',
'<span class="a-icon-alt">Back</span>',
'<span class="a-icon-alt">4.4 out of 5 stars</span>',
'<span class="a-icon-alt">Prime</span>',
'<span class="a-icon-alt">4.6 out of 5 stars</span>']
for e in name_box:
if 'stars' in e:
print(e)
注意:我不得不在列表中的字符串周围加上'',因为您提供的输入数据丢失了。你知道吗
输出:
<span class="a-icon-alt">4.5 out of 5 stars</span>
<span class="a-icon-alt">4.4 out of 5 stars</span>
<span class="a-icon-alt">4.6 out of 5 stars</span>
如果您真的想在第一次中断stars,可以在中放入一个break语句,例如:
for e in name_box:
if 'stars' in e:
print(e)
break
[根据评论编辑]
when i print my name_box, those ' are indeed missing
name_box_string = '[<span class="a-icon-alt">Facebook</span>, <span class="a-icon-alt">Twitter</span>, <span class="a-icon-alt">Pinterest</span>, <span class="a-icon-alt">Free Shipping for Prime Members</span>, <span class="a-icon-alt">4.5 out of 5 stars</span>, <span class="a-icon-alt">Back</span>, <span class="a-icon-alt">4.4 out of 5 stars</span>, <span class="a-icon-alt">Prime</span>, <span class="a-icon-alt">4.6 out of 5 stars</span>]'
name_box_list = name_box_string[1:-1].split(',')
for e in name_box_list:
if 'stars' in e:
print(e)
我更喜欢使用发电机:
解释
next
是一个内置函数,用于检索迭代器的下一项。你知道吗这是你如何做到这一点的,一个例子:
注意:我不得不在列表中的字符串周围加上
''
,因为您提供的输入数据丢失了。你知道吗输出:
如果您真的想在第一次中断
stars
,可以在中放入一个break
语句,例如:[根据评论编辑]
可能你的
name_box
实际上是一个字符串,而不是一个列表。因此需要split()
将其列为一个列表,例如:相关问题 更多 >
编程相关推荐