一尘不染

需要了解Python生成器对象

python

在下面的:

name = 'TODD'
chars = set('AEIOU')
for ii in range(-1, int(math.copysign(len(name) + 1, -1)), -1):
    if any((cc in chars) for cc in name[ii]):
        print 'Found'
    else:
        print 'Not Found'

我知道any(…)内部是一个生成器对象。我不明白的是缺少括号-如果括号属于any()函数,在生成器表达式周围是否应该有另一组括号?

谢谢。


阅读 201

收藏
2021-01-20

共1个答案

一尘不染

当仅在一个参数中使用函数调用时,可以省略括号,生成器表达式语法专门允许使用该括号。

仅带有一个参数的调用可以省略括号。有关详细信息,请参见“通话”部分。

2021-01-20