我需要帮助做一个程序,它应该接收十个数字并返回我输入的负整数的数量。
例子:
如果我输入:
1,2,-3,3,-7,5,4,-1,4,5
该程序应该返回我3
。
我该怎么做?
分解你的问题。你能找出一种方法来检查一个数字是否为负吗?
if number < 0:
...
现在,我们有很多数字,所以我们循环它们:
for number in numbers:
if number < 0:
...
那么我们想要做什么呢?数一数。所以我们这样做:
count = 0
for number in numbers:
if number < 0:
count += 1
更理想的是,这可以很容易地使用生成器表达式和内置的:sum()
>>> numbers = [1, 2, -3, 3, -7, 5, 4, -1, 4, 5]
>>> sum(1 for number in numbers if number < 0)
3
sum(n < 0 for n in nums)
这是最 Pythonic 的方式。
或者您可以使用过滤器“过滤”出负面因素。
total = len(filter(lambda x: x < 0, my_list))