과 비교 파이썬에서 초보자이며 기본을 배우려고합니다. 파이썬 인터프리터에서 이상한 행동을 발견했습니다 :파이썬에서 문자열을 <비교 연산자
>>> 'Pp' < 'Pn'
False # --> expected p comes after n
>>> 'Pap' < 'Pbn'
True # --> though a < b, p is not < n. How can this result as True?
누군가 설명해 주시겠습니까?
과 비교 파이썬에서 초보자이며 기본을 배우려고합니다. 파이썬 인터프리터에서 이상한 행동을 발견했습니다 :파이썬에서 문자열을 <비교 연산자
>>> 'Pp' < 'Pn'
False # --> expected p comes after n
>>> 'Pap' < 'Pbn'
True # --> though a < b, p is not < n. How can this result as True?
누군가 설명해 주시겠습니까?
왜 당신은 그것을 신경 쓰길 기대합니까? 전화 번호부에서 찾을 수있는 것처럼 알파벳순 정렬입니다 (아직 존재하는 경우).
Pap
Pb
Pbn
Pn
그리고 실제로 파이썬이 반환하는 것입니다. docs에서
: 제 처음 두 항목을 비교하고, 이들이 다를 경우,이 비교의 결과를 결정한다 :
비교는 사전 식 순서를 사용하는 두 시퀀스가 같으면 두 시퀀스가 모두 소진 될 때까지 다음 두 항목이 비교됩니다.
알파벳순입니다. – Squidly
어휘 사전'http : // en.wikipedia.org/wiki/Lexicographical_order' –