任何人都可以解释这段代码在做什么
dns = find_all(S("some value"))
index = [dns.index(x) for x in dns if x.web_element.get_attribute("name") == "some value"]
感谢任何帮助。 感谢
答案 0 :(得分:1)
变量dns应该是可迭代的......这意味着它是一个列表,元组等。
代码遍历dns列表,列表中的每个项目都放在变量x中。 x是具有方法web_element.get_attribute的对象。字符串“name”用于该对象。如果返回的值是“某个值”,则将dns.index(x)的结果放在变量someValue中。然后将someValue添加到newList。
在我看来,代码正在创建满足if语句建立的标准的dns列表对象的索引列表。下面的代码对于python list comprehensions的新手来说可能更清楚,但做同样的事情。希望这会有所帮助。
newList = [] # empty list
for x in dns:
if x.web_element.get_attribute("name") == "some value"
someValue = dns.index(x)
newList.append(someValue)