繁体   English   中英

循环中的循环如何与python一起工作

[英]How does a loop in a loop work with python

例如我有以下代码:

websites = ['<html><head></head><body></body></hmtl>']
emails = []

for sourcecode in websites:
    #Search the link before writing
    x = re.findall(r'(?i)\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b', sourcecode)
    for email in x:
        emails.append(email)


print(emails)
print(len(emails))

这些网站是来自许多不同网站的一系列源代码。 emails 数组是空的,因为我们将遍历网站源代码并查找电子邮件地址,然后将它们附加到 emails 数组中。 本质上是提取电子邮件地址。 然后打印电子邮件并打印提取的电子邮件数量。

上面的代码正在工作。 但是可以说我有 5 个源代码。 它如何在循环中循环运行。

我假设第一个循环运行并从数组中的 0 索引开始。 然后继续下一个循环以提取所有电子邮件。 第二个循环将遍历所有数组,基本上完成其任务。 然后第一个循环将继续到数组中的 1 个索引,然后第二个循环将遍历该数组的整个索引以完成其任务,并且循环将继续直到第一个循环完成。

这就是它的执行方式,或者有人可以提供更多信息。 谢谢! :)

内循环将为外循环的每次迭代执行其所有迭代。

在这种情况下,您可以相当轻松地自己测试行为,并且通常尝试这些事情比在这里提出问题并等待答案更快。

例如,给定以下代码:

for i in range(3):
    print(i)
    for x in ['a', 'b', 'c']:
        print(f' - {x}')

你得到以下输出:

0
 - a
 - b
 - c
1
 - a
 - b
 - c
2
 - a
 - b
 - c

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM