Skip to content
📌知识点小结
  • 循环让一段代码重复执行,是自动化的核心:for 遍历已知集合,while 满足条件就重复。
  • { "for x in 集合": "依次取出每个元素;range(n) 生成 0 到 n-1。" }
  • { "while 条件": "条件为真就一直循环,要确保能结束,否则死循环。" }
  • break 提前跳出循环,continue 跳过本次进入下一次。
  • 安全脚本常用循环批量检测多个目标、遍历特征。
自测一下

0.28 循环:让程序重复干活

第〇篇「零基础预科」免费。自动化之所以强大,关键就在循环——写一次,重复执行成百上千遍。

一、for 循环:遍历集合

python
ports = [22, 80, 443]

for port in ports:
    print("检查端口:", port)
  • 依次从列表取出元素放进 port,每取一个执行一次缩进块;
  • 循环次数 = 元素个数。

range:重复固定次数

python
for i in range(3):
    print("第", i, "次")
# 第 0 次 / 第 1 次 / 第 2 次

range(3) 产生 0、1、2,含头不含尾

二、while 循环:条件为真就重复

python
count = 0
while count < 3:
    print("count =", count)
    count = count + 1
  • 每次循环前检查条件,真就执行;
  • 必须让条件最终变假,否则会死循环(一直跑不结束);
  • 死循环时可按 Ctrl + C 中断。

三、break 与 continue

python
for n in range(10):
    if n == 5:
        break        # 到 5 直接结束整个循环
    if n % 2 == 0:
        continue     # 偶数跳过后面,进入下一轮
    print(n)         # 只打印奇数 1,3
关键字作用
break立刻跳出循环
continue跳过本次、继续下一次

四、安全脚本里的循环

python
targets = ["http://a.com", "http://b.com", "http://c.com"]

for url in targets:
    print("正在检测:", url)
    # response = requests.get(url, timeout=5)
    # if "特征" in response.text:
    #     print(url, "可能存在漏洞")

这就是"批量检测"的基本骨架:用循环遍历目标,对每个目标做同样的检查。

五、常见错误

  • 忘记在 while 里更新变量 → 死循环;
  • 循环体没缩进/缩进不一致 → 报错;
  • 遍历的同时修改集合可能出问题,初学者先避免。

六、本篇小结

  • for 遍历集合/固定次数,while 条件为真就重复。
  • range(n) 产生 0…n-1;while 要能结束、防死循环。
  • break 跳出整个循环,continue 跳过本轮。
  • 批量检测 = 循环遍历目标 + 对每个执行检查。

下一篇 0.29 讲函数,把常用逻辑打包复用。