[英]Python dictionary update doesn't work inside for loop
我有一个返回 2 个标签的方法get_h1()
:
[<h2>Запись к врачу</h2>, <h2>Запись на диагностику</h2>]
我有另一种方法,里面有一个 for 循环。 它应该从get_h1()
方法中获取两个标签并在字典中添加 3 个值。 但结果它只返回 1 个标签的值
def print_h1(self):
self.h1 = {}
self.h1_all = self.get_h1()
self.h1_all = [self.h.text for self.h in self.h1_all]
for self.h in self.h1_all:
self.value = self.h
self.leng = len(self.h)
if self.key in self.h:
self.key = "YES"
else:
self.key = "NO"
self.h1.update({'value':self.value, 'leng': self.leng, 'key': self.key})
return self.h1
结果如下:
{'value': 'Запись на диагностику', 'leng': 21, 'key': 'NO'}
如何获得两个标签的结果?
从 文档中:
dict.update([other])
使用其他键/值对更新字典,覆盖现有键。
你有一个self.h1
字典,每次调用self.h1.update
覆盖它的数据。 此外,不可能将重复的键放入字典中。
如果要存储有关多个H1 标签的数据,则应使用字典列表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.