是否可以从以下函数中进行列表理解?

时间:2016-08-17 02:56:08

标签: python list-comprehension

有一个函数返回列表x中大于整数y的整数之和。如果没有大于y的数字,则函数返回0。

def sum_greater(x, y):
    result = 0
    for i in range(len(x)):
        if x[i] > y:
            result = result + x[i]
    return result

我的问题:是否有可能(如果不是这样)从这个函数中进行列表理解?

2 个答案:

答案 0 :(得分:3)

您可以将sum()函数与生成器表达式一起使用:

sum(i for i in x if i > y)

答案 1 :(得分:3)

由于0是无总和的自然结果,因此不需要任何特殊处理。您可以向内置#import "ZipCodeVC.h" #import <FirebaseStorage/FirebaseStorage.h> #import <FirebaseDatabase/FirebaseDatabase.h> @interface ZipCodeVC () @property FIRDatabaseReference *ref; @end @implementation ZipCodeVC - (void)viewDidLoad { [super viewDidLoad]; [self.ref setValue:@"Test" forKey:@"Testing 1"]; } @end 发送generator expression

sum