找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 3431|回复: 8

[求助] 新手小白求助,为什么while语句无法执行

0

主题

0

帖子

0

积分

贫民

积分
0
qer 发表于 2022-8-11 17:53:01 | 显示全部楼层 |阅读模式
本帖最后由 qer 于 2022-8-11 17:57 编辑

a=[34.5,56,7,-23.4,-100,400,20,-8]
b = 0
c = 0
i = 0
while (i < len(a)):#此处提示语法错误
    if a >= 0 :
        b = b + a

    else:
        c = c + a
        i = i + 1

print("大于等于0的和",a)
print("小于0的和",b)
回复

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2022-8-24 17:39:47 | 显示全部楼层
a是list,没法>=0
回复 支持 反对

使用道具 举报

0

主题

4

帖子

4

积分

贫民

积分
4
sjh1103121 发表于 2022-8-25 14:51:11 | 显示全部楼层
while (i < len(a)):#此处提示语法错误   括号用了中文括号了。
回复 支持 反对

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
xkm1216715207 发表于 2022-8-26 11:28:49 | 显示全部楼层
本帖最后由 xkm1216715207 于 2022-8-26 11:31 编辑

报错是因为你用的是中文的括号,要用英文的括号;
a是列表,你是不是想用i来遍历a
a=[34.5,56,7,-23.4,-100,400,20,-8]
b = 0
c = 0
i = 0
while(i < len(a)):
    if a >= 0 :
        b = b + a
    else:
        c = c + a
    i = i + 1

print("大于等于0的和",b)
print("小于0的和",c)

>>>>>
大于等于0的和 517.5
小于0的和 -131.4

回复 支持 反对

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
xkm1216715207 发表于 2022-8-26 11:33:20 | 显示全部楼层
xkm1216715207 发表于 2022-8-26 11:28
报错是因为你用的是中文的括号,要用英文的括号;
a是列表,你是不是想用i来遍历a
a=[34.5,56,7,-23.4,-100 ...

不好意思,上面忘了加

a=[34.5,56,7,-23.4,-100,400,20,-8]
b = 0
c = 0
i = 0
while(i < len(a)):
    if a >= 0 :
        b = b + a
    else:
        c = c + a
    i = i + 1
回复 支持 反对

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
xkm1216715207 发表于 2022-8-26 11:36:43 | 显示全部楼层
xkm1216715207 发表于 2022-8-26 11:33
不好意思,上面忘了加

a=[34.5,56,7,-23.4,-100,400,20,-8]

见鬼了,我明明加了,为什么不显示呢
回复 支持 反对

使用道具 举报

0

主题

4

帖子

4

积分

贫民

积分
4
内森 发表于 2022-9-7 13:22:54 | 显示全部楼层
a=[34.5,56,7,-23.4,-100,400,20,-8]
b = 0
c = 0
i = 0
for i in a:
    if i >= 0 :
        b += i  
    else:
        c += i

print("大于等于0的和",b)
print("小于0的和",c)
回复 支持 反对

使用道具 举报

0

主题

1

帖子

1

积分

贫民

积分
1
jiazhengw 发表于 2022-9-13 21:47:47 | 显示全部楼层
1. b=b+a[i]
2.i =i+1 缩进2格,不是4格,是while的部分。
回复 支持 反对

使用道具 举报

1

主题

4

帖子

4

积分

贫民

积分
4
cnlaolee 发表于 2022-9-29 12:52:28 | 显示全部楼层
1. while i < len(a)即可,没必要再加括号
2. a >=0语法错, a是列表,应为a[i]
3. b =b + a语法错, a是列表,b是整形,无法加
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表