现在我有一个字符串数组,我想循环遍历字符串数组,并将一个索引处的值与下一个索引处的值进行比较。例如,如果我在Java中这样做,代码将是这样的:
string[] some = ["IP", "IP", "ADDRESS", "2342.42.2", "IP", "ASDF"];
for (int i = 0 ; i < some.length() ; i++)
if (some[i] == "IP" && some[i+1] == "ADDRESS")
int ipaddress = some[i+2];
我知道Python有点不同,但基本上我试图找到第一个IP地址。如何比较当前元素和循环中的下一个元素?
答案 0 :(得分:1)
这是您的代码的直接翻译。在python enumerate
中迭代列表作为索引,值对。
>>> some = ["IP", "IP", "ADDRESS", "2342.42.2", "IP", "ASDF"];
>>> for i,v in enumerate(some):
... if v=="IP" and some[i+1] == "ADDRESS":
... ipaddress = some[i+2]
...
>>> ipaddress
'2342.42.2'
但是,您可以考虑没有此类内容的最终案例。所以你也可以这样for i,v in enumerate(some[:-2])
。这将确保您不会超出列表范围,否则您将获得IndexError