首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python如何使用while/for循环和break语句查找列表[7,5,4,4,3,1,-2,-3,-5,-7]中所有负数的和?

Python如何使用while/for循环和break语句查找列表[7,5,4,4,3,1,-2,-3,-5,-7]中所有负数的和?
EN

Stack Overflow用户
提问于 2020-12-12 14:56:27
回答 3查看 55关注 0票数 0
代码语言:javascript
复制
given_list5=[7, 5, 4, 4, 3, 1, -2, -3, -5, -7]
total7=0
i = 0
while True:
    if given_list5[i] >=0:
        break
    total7 += given_list5[i]
    i += 1
print(total7)

这是我的代码。请帮我修一下。谢谢。

EN

回答 3

Stack Overflow用户

发布于 2020-12-12 15:04:54

代码语言:javascript
复制
given_list5=[7, 5, 4, 4, 3, 1, -2, -3, -5, -7]

total_neg=0

for i in given_list5:    #that means you select every item in the list by one by. it's a loop
    if i<0:
        total_neg+=i     #that means total_neg=total_neg + i
print(total_neg)
票数 0
EN

Stack Overflow用户

发布于 2020-12-12 15:07:56

Python允许单行for循环约定。另外,对于这样的东西,您可以简单地执行以下操作:

代码语言:javascript
复制
given_list5 = [7, 5, 4, 4, 3, 1, -2, -3, -5, -7]

filtered_list5 = [i for i in given_list5 if i < 0]
total7 = sum(filtered_list5)
print(total7)
>> -17

说明:filtered_list5只过滤负数列表,而sum()计算列表中所有元素的总和。

将所有内容组合到一行中:total7 = sum([i for i in given_list5 if i < 0])

编辑查看OP的代码样式,正如@Nick所提到的,这是一个使用以下代码的实现:

a) for-loop

代码语言:javascript
复制
given_list5 = [7, 5, 4, 4, 3, 1, -2, -3, -5, -7]

total7 = 0
for number in given_list5:
    if number < 0:
        total7 += number
        
print(total7)
>> -17

b)如果你是初学者,while-loop实际上是很棘手的。要使用while循环循环列表,必须在列表上使用内置函数.pop()。你可以查看check this explanation。因此,在您的代码中,实现将是:

代码语言:javascript
复制
given_list5 = [7, 5, 4, 4, 3, 1, -2, -3, -5, -7]

total7 = 0
while given_list5:
    number = given_list5.pop()
    if number < 0:
        total7 += number
        
print(total7)
>> -17
票数 0
EN

Stack Overflow用户

发布于 2020-12-12 15:22:18

for num in given_list5:循环given_list5元素

str.isdigit() (检查数字):True =字符串,False :数字

代码语言:javascript
复制
given_list5=[7, 5, 4, 4, 3, 1, -2, -3, -5, -7]

sumNegativeQuantity = 0

for num in given_list5 :
    if (str(num).isdigit() == False) and (num < 0) :
        sumNegativeQuantity += num  

print(sumNegativeQuantity)

结果

代码语言:javascript
复制
-17
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65262383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档