튜플은 불변 시퀀스이며 그 내용은 변경될 수 없습니다. 튜플은 목록과 유사한 시퀀스입니다. 주요 차이점은 튜플이 생성된 후에는 내부 요소를 추가하거나 삭제할 수 없다는 것입니다.
튜플의 일반적인 형태는 다음과 같습니다:
(1,2,3,4,5,6)
튜플과 목록 구조의 차이점은 괄호 '()'를 사용하고 각 요소가 ','로 구분된다는 것입니다. 튜플은 정수, 문자열, 목록 및 기타 유형의 콘텐츠도 저장할 수 있습니다.
창조는 다양한 형태를 취할 수 있습니다.
빈 튜플을 만드는 것은 목록과 동일하며 구문은 다음과 같습니다.
내_튜플=()
예를 살펴보겠습니다:
my_tuple=()#빈 튜플 만들기 print(my_tuple)#출력 print('data type', type(my_tuple))#해당 유형 보기
출력 결과:
()데이터 유형<class'tuple'>
튜플을 생성하기 위해 값을 할당하는 방법도 비교적 간단합니다. 리스트에 대해 학습한 후 다음 사항을 익히면 누구나 매우 편리합니다.
직접 할당의 구문 형식:
my_tuple=(값1,값2,값3,값4,값5)
my_tuple은 목록의 이름이며 value1~value5 바이트의 각 요소는 정수, 문자열 또는 목록일 수 있습니다. 다음 예를 참조하세요.
my_tuple=('www.dotcpp.com','123456',[1,2,3,4,5,6])#튜플을 생성하고 직접 할당 print(my_tuple)#출력
출력 결과:
('www.dotcpp.com','123456',[1,2,3,4,5])
range() 함수를 사용하면 특정 데이터 크기의 튜플을 만들 수 있습니다. 다음 예를 살펴보십시오.
my_tuple=tuple(range(1,100,3))#range(1,100,3)은 1-100 사이의 단계 크기가 3인 시퀀스를 생성하고 마지막으로 tuple()을 사용하여 이를 튜플 유형 print(my_tuple)#으로 변환합니다. 산출
출력은 다음과 같습니다
(1,4,7,10,13,16,19,22,25,28,31,34,37,40,43,46,49,52,55,58,61,64,67,70,73 ,76,79,82,85,88,91,94,97)
튜플을 삭제하는 방법은 목록과 동일합니다. del 문을 사용하여 직접 삭제합니다.
delmy_tuple
예를 들어:
>>>my_tuple=tuple(range(1,100,3))#range(1,100,3)은 1-100 사이의 단계 크기가 3인 시퀀스를 생성하고 마지막으로 tuple()을 사용하여 이를 튜플 유형으로 변환합니다. >> > delmy_tuple#Delete Yuanzu>>>print(my_tuple)#이때 출력하면 오류가 발생합니다. Traceback(mostrecentcalllast):File<stdin>,line1,in<module>NameError:name'my_tuple'isnotdefine
튜플 요소에 액세스할 때 인덱스 위치를 기반으로 액세스하려는 요소도 찾습니다.
먼저 my_tuple = ('a','b','c','d') 튜플을 만듭니다.
그런 다음 코드를 살펴보십시오.
my_tuple=('a','b','c','d')print(my_tuple[0],my_tuple[1],my_tuple[2],my_tuple[3])
출력 결과:
ABCD
해당 테이블을 살펴보십시오.
튜플은 불변 배열이므로 해당 요소를 수정할 수 없습니다. 목록 형식의 인덱스 값을 통해 직접 수정하면 오류 메시지가 나타납니다.
>>>my_tuple=(1,2,3,4,5,6)>>>my_tuple[2]=6Traceback(mostrecentcalllast):File<stdin>,line1,in<module>TypeError:'tuple'objectdoesnotsupportitem할당
따라서 튜플의 요소를 수정하려면 다른 방법을 사용해야 합니다. 일반적으로 두 가지 방법이 사용되는데, 하나는 재할당 방법이고 다른 하나는 유형 변환 방법입니다.
>>>마이튜플=(11,22,33,44,55,66,77)>>>마이튜플=(1,2,3)>>>마이튜플(1,2,3)
이 덮어쓰기 방법은 튜플의 요소를 쉽게 수정할 수 있습니다. 물론 이 방법의 사용 범위가 제한되어 있으므로 대부분의 경우 두 번째 방법을 사용할 수 있습니다.
튜플의 100번째 요소를 수정하려면 위의 방법을 사용하는 것이 매우 번거로울 수 있으므로 먼저 튜플을 목록으로 변환하는 등 다른 데이터 유형으로 변환하면 됩니다. 변환 목록으로 작동합니다.
다음 예를 살펴보십시오.
my_tuple=(1,2,3,4,5,6)#먼저 튜플을 만듭니다. my_tuple=list(my_tuple)#튜플을 목록 형식으로 변환합니다. print(my_tuple,type(my_tuple))#지금 출력을 살펴보세요. 데이터 및 type my_tuple.insert(3,'Insert new element')#목록 아래 요소 삽입, 변경 또는 삭제 type my_tuple[3]=['Change of elements']my_tuple.pop()#요소 삭제, pop() 자동 해당하는 마지막 항목을 삭제합니다. 6my_tuple=tuple(my_tuple)#마지막으로 튜플 형식으로 변환됨 print(my_tuple,type(my_tuple))#print
출력 결과:
[1,2,3,4,5,6]<class'list'>(1,2,3,['요소 변경'],4,5)<class'tuple'>
튜플은 리스트에 비해 일부 기능이 부족하지만, 튜플은 고유한 기능도 가지고 있습니다. 우선 튜플의 성능이 리스트보다 빠르며, 둘째로 매우 안전합니다. 데이터 크기가 크면 튜플을 사용하면 데이터가 수정되지 않고 보안이 보장되며 저장 측면에서도 좋은 선택입니다.