当前位置:首页>python>Python循环计数:数一数符合条件的次数

Python循环计数:数一数符合条件的次数

  • 2026-09-02 16:26:05
Python循环计数:数一数符合条件的次数

上一篇我们学习了循环累加。

累加是把数字一点一点加起来。

比如:

1 + 2 + 3 + 4 + 5

今天学习另一个非常常用的循环模板:

循环计数。

计数不是求和。

计数是数一数“有几个符合要求”。

一、什么是计数

生活里经常会计数。

老师点名时,会数今天来了多少人。

做课堂任务时,会数有几个同学完成了。

检查作业时,会数有几道题做对了。

程序也可以这样做。

只要某件事符合条件,就让计数器加 1。

二、先准备一个计数器

计数前,也要先准备一个变量。

我们通常把它叫做 count。

count = 0

一开始还没有数到任何东西。

所以 count 先等于 0。

可以把 count 想成一个计数牌。

每发现一个符合条件的对象,就在计数牌上加 1。

三、数一数 1 到 10 里有几个偶数

先看完整代码。

count = 0
for i in range(10):
    num = i + 1
    if num % 2 == 0:
        count = count + 1
print(count)

输出结果:

5

因为 1 到 10 里面的偶数是:

2
4
6
8
10

一共有 5 个。

四、代码一步步看

这句是准备计数器:

count = 0

这句让程序重复检查 10 次:

for i in range(10):

这句把 0 到 9 变成 1 到 10:

num = i + 1

这句判断 num 是不是偶数:

if num % 2 == 0:

如果是偶数,就让计数器加 1:

count = count + 1

最后输出一共数到了几个:

print(count)

五、看懂 count 的变化

为了看清楚计数过程,可以把 count 打印出来。

count = 0
for i in range(10):
    num = i + 1
    if num % 2 == 0:
        count = count + 1
        print(count)

输出结果:

1
2
3
4
5

这说明程序每找到一个偶数,count 就增加一次。

遇到 2,count 变成 1。

遇到 4,count 变成 2。

遇到 6,count 变成 3。

遇到 8,count 变成 4。

遇到 10,count 变成 5。

六、用 += 写得更短

前面学过复合赋值。

count = count + 1

可以简写成:

count += 1

所以代码也可以写成:

count = 0
for i in range(10):
    num = i + 1
    if num % 2 == 0:
        count += 1
print(count)

输出结果还是:

5

刚开始学习时,如果觉得 += 不熟,可以先写完整形式。

重点是理解:

符合条件,才加 1。

不符合条件,就不动。

七、计数和累加有什么区别

循环累加看重的是“加进去的值”。

比如把 1 到 5 加起来:

total = 0
for i in range(5):
    num = i + 1
    total = total + num
print(total)

输出结果是:

15

循环计数看重的是“出现了几次”。

比如数 1 到 5 里面有几个奇数:

count = 0
for i in range(5):
    num = i + 1
    if num % 2 == 1:
        count = count + 1
print(count)

输出结果是:

3

因为奇数是 1、3、5。

一共有 3 个。

八、让用户输入范围

如果想统计 1 到 n 里面有几个偶数,可以这样写。

n = int(input("请输入 n:"))
count = 0
for i in range(n):
    num = i + 1
    if num % 2 == 0:
        count = count + 1
print(count)

如果输入:

20

输出结果:

10

因为 1 到 20 里面有 10 个偶数。

九、常见错误

第一种错误:

把 count = 0 写进循环里面。

错误示例:

for i in range(10):
    count = 0
    num = i + 1
    if num % 2 == 0:
        count = count + 1
print(count)

这样每一轮都会把 count 清零。

就像每点到一个人前,都把点名表擦掉。

第二种错误:

没有写 if 判断,直接每轮都加 1。

count = 0
for i in range(10):
    count = count + 1
print(count)

这段代码会输出 10。

它数的是循环一共执行了几次。

它没有统计偶数个数。

第三种错误:

把 print(count) 放错缩进。

如果 print(count) 在循环里面,它会每一轮输出。

如果只想看最后答案,就放在循环外面。

十、课堂小任务

请完成一个统计程序。

要求:

输入一个正整数 n。

统计 1 到 n 里面有几个数能被 3 整除。

参考代码:

n = int(input("请输入 n:"))
count = 0
for i in range(n):
    num = i + 1
    if num % 3 == 0:
        count = count + 1
print(count)

请分别输入 10、30、100 测试。

想一想:

为什么输入 30 时,结果是 10?

十一、今天记住三句话

计数前,先写 count = 0。

循环里,符合条件才让 count 加 1。

计数回答的是“有几个”,累加回答的是“总共多少”。

下一篇我们学习循环筛选。

筛选会把符合条件的内容找出来。

最新文章

随机文章