You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何统计并打印用户输入序列中的正数总个数

解决方案

你尝试获取post长度报错的原因是:post是单次循环遍历得到的单个浮点数值,不属于序列类型,没有长度属性,无法用len()方法取值。

实现正数统计的方法很简单:新增一个计数变量,初始值设为0,每次判断当前数值为正数时,给计数变量加1,遍历完成后直接打印计数变量即可得到正数总个数。

仅统计正数个数的代码

count = 0
num = map(float, input().split())
for post in num:
    if post > 0:
        count += 1
print(count)

输入示例2 -4 3.6 1时,输出结果为3,符合预期。

同时保留打印所有正数、统计个数的代码

count = 0
num = map(float, input().split())
for post in num:
    if post > 0:
        print(int(post))
        count += 1
print("正数总个数:", count)

输入示例2 -4 3.6 1时,输出结果为:

2
3
1
正数总个数: 3

注意事项

  • map()返回的是迭代器对象,只能遍历一次,不要分开两次遍历分别执行打印单个正数、统计数量的操作,第二次遍历会取不到任何值,所有相关逻辑要放在同一次遍历中完成。

内容的提问来源于stack exchange,提问作者user91919

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 04:39:00