06.List
by SANGGI JEON
List
- linked list로 구현되어 있음
color1 = ['red', 'blue', 'green']
color2 = ['orange', 'black', 'white']
add_color = color1 + color2
print(len(add_color))
print(add_color)
1. extend
colors = ['red', 'blue', 'green']
colors.extend(['black', 'purple'])
print(colors)
2. Slice
- [start : end: step]
cities = ['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원']
print(cities[0:6])
print(cities[:6])
print(cities[2:])
print(cities[-7:])
print(cities[:-2])
print(cities[:])
print(cities)
print(cities[1:7:2])
print(cities[::-1])
print(cities[::2])
# 결과 값
['서울', '부산', '인천', '대구', '대전', '광주']
['서울', '부산', '인천', '대구', '대전', '광주']
['인천', '대구', '대전', '광주', '울산', '수원']
['부산', '인천', '대구', '대전', '광주', '울산', '수원']
['서울', '부산', '인천', '대구', '대전', '광주']
['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원']
['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원']
['부산', '대구', '광주']
['수원', '울산', '광주', '대전', '대구', '인천', '부산', '서울']
['서울', '인천', '대전', '울산']
3. Insert
- 특정 위치에 항목을 추가할 때
colors = ['red', 'blue', 'green']
colors.insert(1, 'black')
colors.insert(2, 'purple')
print(colors)
4. remove
- 특정 항목 삭제
colors = {'red', 'blue', 'green'}
colors.remove('blue')
print(colors)
6. del
- 해당 인덱스에 있는 항목 삭제
colors = ['red', 'blue', 'green']
del colors[0]
print(colors)
7. count
- 리스트 안에 특정 요소가 몇개 있는지 출력
a = [5, 10, 5, 7, 6]
print(a.count(5))
appetizer = ['egg', 'salad', 'bread', 'soup', 'canape']
main_dish = ['fish', 'lamb', 'pork', 'beef', 'chicken']
dessert = ['apple', 'ice cream', 'pudding', 'cookies', 'cake']
order = [appetizer, main_dish, dessert]
jane = [order[0][:-2], main_dish[1::3], dessert[1]] # [['egg', 'salad', 'bread'], ['lamb', 'chicken'], ['lamb']]
del jane[2] # [['egg', 'salad', 'bread'], ['lamb', 'chicken']]
jane.extend([order[2][0:1]]) # [['egg', 'salad', 'bread'], ['lamb', 'chicken'], ['apple']]
print(jane)
8. Join
colors = ['red', 'blue', 'green', 'yellow']
result = ''.join(colors)
print(result)
result = ' '.join(colors)
print(result)
result = ','.join((colors))
print(result)
result = '-'.join(colors)
print(result)
9. sort와 sorted
- python 에서 sort는 Timsort를 사용
- 병합정렬과 퀵정렬에서 파생된 하이브리드 정렬
a = [1, 10, 5, 7, 6]
a.sort(reverse=True)
print(a)
a = [3, 2, 1, 4]
b = sorted(a) # sort 결과 리턴.. sorted(a, reverse=True)
print(a, b)
10. List Comprehension
result = []
# Comprehension X
for i in range(10):
result.append(i)
# Comprehension O
reuslt = [i for i in range(10)]
result = []
# Comprehension X
for i in range(10):
if i % 2 == 0:
result.append(i)
# Comprehension O
result = [i for i in range(10) if i%2 == 0]
# Comprehension O
result = [i if i%2 == 0 else 99 for i in range(10)]
word1 = "Hello"
word2 = "World"
result = [i+j for i in word1 for j in word2]
print(result)
case1 = ['A', 'B', 'C']
case2 = ['D', 'E', 'F']
result = [[i+j for i in case1] for j in case2]
print(result)
Subscribe via RSS