파이썬에서 사용자 지정 비교 (0 <mytype)를 어떻게 정의합니까?

사용자 3852791

그래서 저는 현재 (ab) 파이썬 표기법을 사용하여 도메인 특정 언어를 만들고 있습니다. 이것의 일부로 부울이 아닌 값을 반환하기 위해 비교 함수를 재정의하고 있습니다.

따라서 (mytype1 <mytype2) 및 (mytype <0)의 경우 __lt __ () 매직 메서드를 정의하여 쉽게 수행 할 수 있습니다.

그러나 (0 <mytype)에 대해 그렇게하는 방법을 알 수 없습니다. 아마도 매직 메서드가 내장 int 유형에 정의되어야하기 때문입니다. 숫자 연산을 위해 존재하는 것처럼 __rlt __ () 함수가없는 것 같습니다.

lhs가 int (python3) 유형 인 경우이 비교에 대한 지원을 어떻게 추가합니까?

Ignacio Vazquez-Abrams

에 따라 문서 의 반사 형태 __lt__()입니다 __gt__().

이러한 메서드의 인수가 교체 된 버전은 없습니다 (왼쪽 인수가 작업을 지원하지 않지만 오른쪽 인수가 지원할 때 사용됨). 오히려, __lt__()그리고 __gt__()서로의 반영이다, __le__()그리고 __ge__()서로의 반사하고, __eq__()그리고 __ne__()자신의 반영이다. 피연산자가 다른 유형이고 오른쪽 피연산자의 유형이 왼쪽 피연산자 유형의 직접 또는 간접 서브 클래스 인 경우 오른쪽 피연산자의 반영된 메소드가 우선 순위를 가지며 그렇지 않으면 왼쪽 피연산자의 메소드가 우선 순위를 갖습니다. 가상 서브 클래 싱은 고려되지 않습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

사용자 지정 트리 집합 구현에서 두 개체를 어떻게 비교합니까?

분류에서Dev

파이썬의 객체를 정수와 어떻게 비교합니까?

분류에서Dev

파이썬은 사용자 정의 객체를 어떻게 정렬합니까?

분류에서Dev

정적 메서드는 비교기를 어떻게 사용합니까?

분류에서Dev

사용자 지정 라우터를 Symfony 번들의 서비스에 어떻게 전달합니까?

분류에서Dev

sendMessage 메서드를 사용할 때 (create 메서드와 비교) Twilio StatusCallBack URL을 어떻게 지정합니까?

분류에서Dev

파이썬에서 생성기를 사용하여 이터 러블을 어떻게 비교합니까?

분류에서Dev

문자열의 길이를 동일한 목록의 정수와 어떻게 비교합니까?

분류에서Dev

'if'문에서 목록을 정수와 어떻게 비교합니까? 파이썬

분류에서Dev

계정이 이미 생성 된 후 새 사용자의 비밀번호를 어떻게 설정합니까?

분류에서Dev

계정이 이미 생성 된 후 새 사용자의 비밀번호를 어떻게 설정합니까?

분류에서Dev

파이썬에서 목록의 모든 문자열에서 특정 문자를 어떻게 제거합니까?

분류에서Dev

이 함수는 비트 연산자 만 사용하여 3 개의 정수를 어떻게 합합니까?

분류에서Dev

이 함수는 비트 연산자 만 사용하여 3 개의 정수를 어떻게 합합니까?

분류에서Dev

파이썬의 사전에서 특정 정보를 어떻게 반환합니까?

분류에서Dev

Java에서 사용자 지정 커서를 어떻게 설정합니까?

분류에서Dev

문자열과 정수 사이의 비교는 자바 스크립트에서 어떻게 작동합니까?

분류에서Dev

Outlook에서 항상 지정된 교정 언어를 사용하도록하려면 어떻게합니까?

분류에서Dev

파이썬에서 두 숫자가 특정 비율과 같은지 어떻게 확인합니까?

분류에서Dev

양식 제출 이벤트를 사용자 지정 지시문의 상위에 어떻게 전파합니까?

분류에서Dev

Python을 사용하여 URL에서 비디오의 특정 지점에서 정지 이미지를 얻으려면 어떻게해야합니까?

분류에서Dev

PHP herokuapp에 대한 사용자 지정 404를 어떻게 설정합니까?

분류에서Dev

C ++의 구성 파일에서 사용자 지정 "const"변수를로드하려면 어떻게합니까?

분류에서Dev

사용자 정의 newtype에 대한 PersistField를 어떻게 파생합니까?

분류에서Dev

AWS의 사용자 지정 AMI에서 cloud-init를 설정하려면 어떻게해야합니까? (CentOS)

분류에서Dev

vi 또는 sed를 사용하여 지정된 문자열 사이에서 여러 문자를 어떻게 교체합니까?

분류에서Dev

Minikube의 수신 컨트롤러에 대한 사용자 지정 포트를 어떻게 지정합니까?

분류에서Dev

어떻게 종류의 비교 및 비교기 인터페이스를 사용하지 않고지도로? 어떻게 사용자 정의 정렬을 작성하는?

분류에서Dev

파이썬의 특정 범위에서 0이 아닌 행 수를 어떻게 계산할 수 있습니까?

Related 관련 기사

  1. 1

    사용자 지정 트리 집합 구현에서 두 개체를 어떻게 비교합니까?

  2. 2

    파이썬의 객체를 정수와 어떻게 비교합니까?

  3. 3

    파이썬은 사용자 정의 객체를 어떻게 정렬합니까?

  4. 4

    정적 메서드는 비교기를 어떻게 사용합니까?

  5. 5

    사용자 지정 라우터를 Symfony 번들의 서비스에 어떻게 전달합니까?

  6. 6

    sendMessage 메서드를 사용할 때 (create 메서드와 비교) Twilio StatusCallBack URL을 어떻게 지정합니까?

  7. 7

    파이썬에서 생성기를 사용하여 이터 러블을 어떻게 비교합니까?

  8. 8

    문자열의 길이를 동일한 목록의 정수와 어떻게 비교합니까?

  9. 9

    'if'문에서 목록을 정수와 어떻게 비교합니까? 파이썬

  10. 10

    계정이 이미 생성 된 후 새 사용자의 비밀번호를 어떻게 설정합니까?

  11. 11

    계정이 이미 생성 된 후 새 사용자의 비밀번호를 어떻게 설정합니까?

  12. 12

    파이썬에서 목록의 모든 문자열에서 특정 문자를 어떻게 제거합니까?

  13. 13

    이 함수는 비트 연산자 만 사용하여 3 개의 정수를 어떻게 합합니까?

  14. 14

    이 함수는 비트 연산자 만 사용하여 3 개의 정수를 어떻게 합합니까?

  15. 15

    파이썬의 사전에서 특정 정보를 어떻게 반환합니까?

  16. 16

    Java에서 사용자 지정 커서를 어떻게 설정합니까?

  17. 17

    문자열과 정수 사이의 비교는 자바 스크립트에서 어떻게 작동합니까?

  18. 18

    Outlook에서 항상 지정된 교정 언어를 사용하도록하려면 어떻게합니까?

  19. 19

    파이썬에서 두 숫자가 특정 비율과 같은지 어떻게 확인합니까?

  20. 20

    양식 제출 이벤트를 사용자 지정 지시문의 상위에 어떻게 전파합니까?

  21. 21

    Python을 사용하여 URL에서 비디오의 특정 지점에서 정지 이미지를 얻으려면 어떻게해야합니까?

  22. 22

    PHP herokuapp에 대한 사용자 지정 404를 어떻게 설정합니까?

  23. 23

    C ++의 구성 파일에서 사용자 지정 "const"변수를로드하려면 어떻게합니까?

  24. 24

    사용자 정의 newtype에 대한 PersistField를 어떻게 파생합니까?

  25. 25

    AWS의 사용자 지정 AMI에서 cloud-init를 설정하려면 어떻게해야합니까? (CentOS)

  26. 26

    vi 또는 sed를 사용하여 지정된 문자열 사이에서 여러 문자를 어떻게 교체합니까?

  27. 27

    Minikube의 수신 컨트롤러에 대한 사용자 지정 포트를 어떻게 지정합니까?

  28. 28

    어떻게 종류의 비교 및 비교기 인터페이스를 사용하지 않고지도로? 어떻게 사용자 정의 정렬을 작성하는?

  29. 29

    파이썬의 특정 범위에서 0이 아닌 행 수를 어떻게 계산할 수 있습니까?

뜨겁다태그

보관