문제

다음에서 :

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'
.

(...) 내부에있는 것이 생성기 객체입니다.내가 이해하지 못하는 것은 괄호가 부족하다는 것입니다.

감사합니다.

도움이 되었습니까?

해결책

괄호는 하나의 인수 만 사용하는 함수 호출, 발전기 표현식 구문 특히 허용합니다.

괄호는 하나의 인수 만 사용한 호출에서 괄호를 생략 할 수 있습니다. 전화

다른 팁

표현식이 괄호 안의 유일한 방법이면 발전기 표현식의 괄호를 남겨 둘 수 있습니다. 설명서 :

괄호는 하나의 인수 만 사용한 호출에서 생략 될 수 있습니다.

아니오, 여분의 가방금은 필요하지 않으며 실제로 테스트중인 "부울 표현식"에 항상 필요한 것은이 두 가지 간단한 예를 참조하십시오.

In [37]: any(i > 10 for i in range(19))
Out[37]: True

In [38]: all(i > 10 for i in range(19))
Out[38]: False
.

당신이 가지고있는 것은 단일 인수 (생성자 표현식)가있는 함수 호출이므로 칠지가 필요하지 않습니다. 발전기 표현식 문서

For function calls with just one argument (that generator expression), they aren't required per the docs

The parentheses can be omitted on calls with only one argument. See section Calls for the detail.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top