for 루프와 if 문을 별도의 줄에 사용하는 방법을 알고 있습니다.
>>> a = [2,3,4,5,6,7,8,9,0]
... xyz = [0,12,4,6,242,7,9]
... for x in xyz:
... if x in a:
... print(x)
0,4,6,7,9
그리고 나는 다음과 같이 진술이 간단 할 때 목록 이해를 사용하여 이들을 결합 할 수 있다는 것을 알고 있습니다.
print([x for x in xyz if x in a])
그러나 내가 찾을 수없는 것은 for 루프와 if 문을 조합하여 발생하는 복잡한 명령 세트 ( "print x"뿐만 아니라)를 보여주는 어디에서나 (복사하고 배울 수있는) 좋은 예입니다. 내가 기대할만한 것 :
for x in xyz if x not in a:
print(x...)
이것은 파이썬이 작동하는 방식이 아닙니까?
x in a
경우 속도가 느립니다 a
.
for
루프와if
문장 을 피하는 것은 아닙니다 .