내부 변경 가능 유형 및 불변 유형
내부 변경 가능 유형은 해시 가능 유형이라고도 하며, 내부 변경 가능 유형은 해시 불가능 유형이라고도 합니다.
내부 불변 유형:
숫자 유형: int, float,decimal,fractions.Fraction, complex
문자열 유형: str, bytes
튜플
frozenset
부울 유형: True, False
없음
내부 변수 유형:
list
dict
set
실제로 내부 변수인지 확인하는 방법
해시는 여전히 내부 변경 가능 유형의 해시 값을 반환합니다. 내부 변경 가능 유형에서 함수가 호출되면 TypeError가 반환됩니다.
해싱 가능한 유형만 dict 키로 사용할 수 있습니다.
해싱할 수 있는 유형만 세트에 배치할 수 있으므로 세트 자체를 중첩하여 세트에 저장할 수 없습니다.
예:
>>> hash(b'aaa')
6904179387427091653
>>> hash(bytearray(b'aaa'))
역추적(가장 최근 호출 마지막):
파일 "
TypeError: 해시할 수 없는 유형: 'bytearray'
>>> ({1,2,3}))
-7699079583225461316
>>> hash({1,2,3})
추적(가장 최근 호출 마지막):
파일 "
TypeError: unhashable type: 'set'
작업이 내부 변경인지 실제로 확인하는 방법.
내장 함수 id()는 메모리에 있는 객체의 실제 저장 주소를 반환합니다.
>>>L=[1]
>>id(L)
49689480
>>> 🎜>>>> id(L)
49689480 #수정한 곳을 보니 저장주소가 바뀌지 않은 것을 알 수 있습니다.
>>> s='aa'
>>> ID
47072456
>>> >> id(s)
49700008 #그자리에서 수정할 수 없기 때문에 문자열이 변경되면 새로운 메모리 주소를 열어서 저장합니다.
>>>
데이터가 순서대로 저장되는지 여부
순서가 지정된 데이터 유형
순서가 지정된 데이터 유형을 시퀀스라고 하며 다음과 같습니다. 인덱싱, 샤딩, 덧셈, 곱셈, 길이 계산, 크기 비교 작업을 지원합니다.
비교 시 각 요소의 크기를 순차적으로 비교하게 되며, 비교 중 유형이 다른 것으로 확인되면 오류가 발생합니다.
목록
튜플
str
바이트
순서가 지정되지 않은 데이터 유형
dict
set
위 내용은 Python의 데이터형에 대한 요약입니다. 더 많은 관련 글은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!