Python

시퀀스 자료형 확인하기

haventmetyou 2023. 9. 25. 15:51

in 연산자를 사용해서 있으면 True, 없으면 False 출력

not in 연산자 특정 값이 없으면 True, 있으면 False 출력

튜플, range, 문자열도 같은 방법으로 활용 가능

시퀀스 자료형 중 range는 + 연산자로 객체 연결 불가
리스트나 튜플로 만들어 연결 가능
문자열끼리 연결

시퀀스 객체 반복하기 (0 또는 음수를 곱하면 빈 객체가 나오며 실수는 곱할 수 없음)

* 연산자

· 시퀀스 객체 * 정수

· 정수 * 시퀀스 객체

· range는 + 연산자로 연결할 수 없듯 * 연산자 이용해 반복 불가능

→ 리스트 or 튜플로 만들어 반복 가능

· 문자열은 * 연산자 사용해 반복 가능

len 함수로 요소의 개수 구하기

문자열의 길이는 공백까지 포함, 한글 문자열도 len으로 구할 수 있음

UTF-8에서 한글 글자 하나는 3 바이트로 표현하므로 실제 바이트 수 15

 

인덱스 사용

index  사용
음수 인덱스는 뒤에서 n 번째 요소 출력
인덱스 범위 벗어날 경우 에러, 마지막 요소 접근

 

요소에 값 할당하기

시퀀스 객체는 []로 요소에 접근한 뒤 =로 값 할당

· 시퀀스 객체[인덱스] = 값

범위 벗어난 값 할당 시 에러, 튜플은 안에 저장된 요소를 변경할 수 없으므로 에러 발생
range와 문자열도 안에 저장된 요소를 변경할 수 없음

 

del로 요소 삭제

range와 문자열도 안에 저장된 요소 삭제 불가능

 

슬라이스

시퀀스 객체[시작 인덱스:끝 인덱스]

시작 인덱스, 끝 인덱스를 같은 숫자로 지정하면 아무것도 가지고 오지 않음

실제로 가져오는 요소는 시작 인덱스~끝 인덱스 -1까지

리스트 중간 부분 가져오기

인덱스 증가폭 사용하기

· 시퀀스 객체[시작 인덱스:끝 인덱스:인덱스 증가폭]

인덱스 생략하기

· 시퀀스 객체[:끝 인덱스]

· 시퀀스 객체[시작 인덱스:]

· 시퀀스 객체[:]

인덱스 생략하면서 증가폭 사용하기

· 시퀀스 객체[:끝 인덱스:증가폭]

· 시퀀스 객체[시작 인덱스::증가폭]

· 시퀀스 객체[::증가폭]

· 시퀀스 객체[::]

튜플, range, 문자열에 슬라이스 사용하기

슬라이스에 요소 할당

· 시퀀스 객체[시작 인덱스:끝 인덱스] = 시퀀스 객체

슬라이스 범위의 요소 개수와 할당할 요소 개수가 정확히 일치해야 함

인덱스를 건너뛰면서 값 할당

· 시퀀스 객체[시작 인덱스:끝 인덱스:인덱스 증가폭] = 시퀀스 객체

· 튜플, range, 문자열은 슬라이스 범위를 지정하더라도 요소를 할당할 수 없음

del로 슬라이스 삭제

· del 시퀀스 객체[시작 인덱스:끝 인덱스]

· 인덱스 증가폭 적용 가능

· 튜플, range, 문자열은 del로 슬라이스를 삭제할 수 없음

 

연습 문제 적용