리스트와 튜플
리스트와 튜플
예제 코드
# Section04-3
# 파이썬 데이터 타입(자료형)
# 리스트, 튜플
print('#==== 리스트 ====#')
# 리스트 자료형(순서O, 중복O, 수정O, 삭제O)
# 선언
a = []
b = list()
c = [1, 2, 3, 4]
d = [10, 100, 'Pen', 'Cap', 'Plate']
e = [10, 100, ['Pen', 'Cap', 'Plate']]
# 인덱싱
print('#== 인덱싱 ==#')
print('d - ', type(d), d)
print('d - ', d[1])
print('d - ', d[0] + d[1] + d[1])
print('d - ', d[-1])
print('e - ', e[-1][1])
print('e - ', list(e[-1][1]))
print()
# 슬라이싱
print('#== 슬라이싱 ==#')
print('d - ', d[0:3])
print('d - ', d[2:])
print('e - ', e[2][1:3])
print()
# 리스트 연산
print('#== 리스트 연산 ==#')
print('c + d - ', c + d)
print('c * 3 - ', c * 3)
# print("c[0] + 'hi' - ",c[0] + 'hi') # 아래처럼 c[0]을 str로 형변환 해야한다.
print("'hi' + c[0] - ", 'hi' + str(c[0]))
print()
# 리스트 수정, 삭제
print('#== 리스트 수정, 삭제 ==#')
c[0] = 4
print('c - ', c)
c[1:2] = ['a', 'b', 'c']
print('c - ', c)
c[1] = ['a', 'b', 'c'] # 인덱스 하나만 지정해서 배열을 넣으면 2중 배열이 된다.
print('c - ', c)
c[1:3] = []
print('c - ', c)
del c[3]
print('c - ', c)
print()
# 리스트 함수
print('#== 리스트 함수 ==#')
a = [5, 2, 3, 1, 4]
print('a - ', a)
a.append(6)
print('a - ', a)
a.sort()
print('a - ', a)
a.reverse()
print('a - ', a)
print('a - ', a.index(5))
a.insert(2, 7)
print('a - ', a)
a.reverse()
a.remove(1) # 인덱스 번호가 아닌 값을 지운다.
print('a - ', a)
print('a - ', a.pop()) # 맨 마지막 값만 꺼낸다 (삭제함)
print('a - ', a.pop())
print('a - ', a)
print('a - ', a.count(4))
ex = [8, 9]
a.extend(ex) # 값을 연정한다. 리스트 말고 값이 추가된다.
print('a - ', a)
print()
# 삭제 remove, pop, del
# 반복문 활용
print('#== 반복문 활용 ==#')
while a:
l = a.pop()
print(2 is l, l)
print()
print('#==== 튜플 ====#')
# 튜플 자료형(순서O, 중복O, 수정X,삭제X)
# 선언
a = ()
b = (1,)
c = (1, 2, 3, 4)
d = (10, 100, 'Pen', 'Cap', 'Plate')
e = (10, 100, ('Pen', 'Cap', 'Plate'))
# 인덱싱
print('#== 인덱싱 ==#')
print('d - ', type(d), d)
print('d - ', d[1])
print('d - ', d[0] + d[1] + d[1])
print('d - ', d[-1])
print('e - ', e[-1][1])
# print('e - ', e[-1][1][4])
print('e - ', list(e[-1][1]))
print()
# 슬라이싱
print('#== 슬라이싱 ==#')
print('d - ', d[0:3])
print('d - ', d[2:])
print('e - ', e[2][1:3])
print()
# 튜플 연산
print('#== 연산 ==#')
print('c + d - ', c + d)
print('c * 3 - ', c * 3)
# print("c[0] + 'hi' - ",c[0] + 'hi')
print("'hi' + c[0] - ", 'hi' + str(c[0]))
print()
# 튜플 함수
print('#== 함수 ==#')
a = (5, 2, 3, 1, 4)
print('a - ', a)
print('a - ', a.index(5))
print('a - ', a.count(4))
실행 콘솔
#==== 리스트 ====#
#== 인덱싱 ==#
d - <class 'list'> [10, 100, 'Pen', 'Cap', 'Plate']
d - 100
d - 210
d - Plate
e - Cap
e - ['C', 'a', 'p']
#== 슬라이싱 ==#
d - [10, 100, 'Pen']
d - ['Pen', 'Cap', 'Plate']
e - ['Cap', 'Plate']
#== 리스트 연산 ==#
c + d - [1, 2, 3, 4, 10, 100, 'Pen', 'Cap', 'Plate']
c * 3 - [1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]
'hi' + c[0] - hi1
#== 리스트 수정, 삭제 ==#
c - [4, 2, 3, 4]
c - [4, 'a', 'b', 'c', 3, 4]
c - [4, ['a', 'b', 'c'], 'b', 'c', 3, 4]
c - [4, 'c', 3, 4]
c - [4, 'c', 3]
#== 리스트 함수 ==#
a - [5, 2, 3, 1, 4]
a - [5, 2, 3, 1, 4, 6]
a - [1, 2, 3, 4, 5, 6]
a - [6, 5, 4, 3, 2, 1]
a - 1
a - [6, 5, 7, 4, 3, 2, 1]
a - [2, 3, 4, 7, 5, 6]
a - 6
a - 5
a - [2, 3, 4, 7]
a - 1
a - [2, 3, 4, 7, 8, 9]
#== 반복문 활용 ==#
False 9
False 8
False 7
False 4
False 3
True 2
#==== 튜플 ====#
#== 인덱싱 ==#
d - <class 'tuple'> (10, 100, 'Pen', 'Cap', 'Plate')
d - 100
d - 210
d - Plate
e - Cap
e - ['C', 'a', 'p']
#== 슬라이싱 ==#
d - (10, 100, 'Pen')
d - ('Pen', 'Cap', 'Plate')
e - ('Cap', 'Plate')
#== 연산 ==#
c + d - (1, 2, 3, 4, 10, 100, 'Pen', 'Cap', 'Plate')
c * 3 - (1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4)
'hi' + c[0] - hi1
#== 함수 ==#
a - (5, 2, 3, 1, 4)
a - 0
a - 1
Tip