>>> l=[(i,j,k) for i in {-4,-2,1,2,5,0} for j in {-4,-2,1,2,5,0} for k in {-4,-2,1,2,5,0} if i+j+k==0 if i==0 & j==0 & k==0]
>>> l
[(0, 0, 0), (0, 2, -2), (0, -2, 2)]
위의 파이썬 3 코드는 i + j + k = 0이고 모든 원소가 0 인 트리플 (i, j, k)을 찾습니다. 따라서 대답은 (0,0,0)이어야합니다.파이썬은 동등성 검사를 어떻게 처리합니까?
그러나 응답이 오기를 하였다 (0, 0, 0), (0, 2, -2), (0, -2, 2)]
I 찾고 약간 문제 있음을 발견하면 and
대신 &
을 사용합니다. and
은 논리 연산자이고 &
은 비트 연산자입니다.
그러나 나는 왜 내가 &
을 사용하여 얻은 답을 얻었는지 알 수 없습니다.
파이썬 3은 동등 검사 작업을 어떻게 처리합니까?
평등 검사와 관련이 있는지 이해할 수 없습니다. –
나는 초보자입니다. 제목이 잘못되었다고 생각하면 제목을 편집하십시오. – kryptoknight