Python

[Python] List(리스트)

SangRok Jung 2022. 8. 23. 21:40
반응형

List(리스트)


  • 순서가 있으며 중복을 허용하는 자료형.
  • 리스트를 생성 할 때는 [] 기호를 사용한다.
  • 생성 후 값의 변경이 가능하다.

 

▶ 생성문

List = [1, 'abc', 3]
a = [1, 2, 3, 4, 5]
b = a
print(b)
c = ["red", "blue", "yellow"]
print(c)
d = [1, 2, "blue", "red"]
print(d)
e = [1, 2, "[red, blue]"]
print(e)

# [1, 2, 3, 4, 5]
# ['red', 'blue', 'yellow']
# [1, 2, 'blue', 'red']
# [1, 2, '[red, blue]']

 

 

 

▶ 중첩 리스트

리스트 안에 요소로 리스트가 들어가는 형태

 

List = [['a', 'b'], [1, 2, 3]]

L = [['a', 'b'], [1, 2, 3]]
print("L:", L)
print(L[0][0])
print(L[0][1])
print(L[1][0])
print(L[1][1])
print(L[1][2])

# L: [['a', 'b'], [1, 2, 3]]
# a
# b
# 1
# 2
# 3
b = [1, 2, 3, 4, 5]
print(b[0])
print(b[0]+b[3])
print(b[-1])

# 1
# 5
# 5

new_a = [1, 2, 3, 4, 5,['a', 'b',[100, 101, 102], 'c', 'd'], 7, 8, 9]
print(new_a[:6])
print(new_a[:6:2])
print(new_a[:5:3])
print(new_a[:5:4])
print(new_a[5][2][1:3])

# [1, 2, 3, 4, 5, ['a', 'b', [100, 101, 102], 'c', 'd']]
# [1, 3, 5]
# [1, 4]
# [1, 5]
# [101, 102]

b = [1, 2, 3, 4, 5]
c = "12345"
print(b[:])
print(c[:4])
print(b[3:])

# [1, 2, 3, 4, 5]
# 1234
# [4, 5]

 

 

 

▶ 메서드

함수명 기능 설명
append() 추가 list.append(추가 하려는 값)
insert() 삽입 list.insert(인덱스 위치, 추가하려는 값)
remove() 가장 앞에 있는 값 삭제 list.remove(삭제하려는 값) 가장
sort() 정렬 list.sort()
set() 중복제거 list.set()
clear() 모두 삭제 list.clear()
del() 특정 위치 요소 삭제 del list[:3]
pop() 마지막 요소 출력 후 삭제 list.pop()
count() 특정 요소 개수 count(타겟)
extend() 리스트 병합 list.extend(list2)
index() 리스트의 특정 요소 검색 list.index(인자)
list.split(obj) 리스트 분리 list.split(인자)
list.copy(list) 리스트 복사 list.copy(list2)
len() 리스트 길이 len(list)
list() 리스트로 변환 list(seq)
reverse() 거꾸로 뒤집기 list.reverse()

 

a = [1, 2, 3, 4]
b = [6, 7, 8, 9]

print(a+b) # [1, 2, 3, 4, 6, 7, 8, 9]
print(a*2) # [1, 2, 3, 4, 1, 2, 3, 4]
print(len(a)) # 4

k = [12345678]
print(len(k)) # 1

m = '12345678'
print(len(m)) # 8

c = 'good'
b.append(c)
print(b) # [6, 7, 8, 9, 'good']

new_c = ['good']
b.append(new_c[0])
print(b) # [6, 7, 8, 9, 'good', 'good']
a = [1, 2, 3, 4, [a, b, c]]
b = [6, 7, 8, 9]

# 변수 a의 데이터의 개수
print(len(a))

# 변수 a의 합계
# print(sum(a)) 에러

# 변수 b의 합계
print(sum(b))

# 변수 b의 최대값
print(max(b))

# 변수 b의 최소값
print(min(b))

# 변수 b의 첫번째 데이터 삭제
del b[0]
print(b)


b = [6, 7, 8, 9]
# 변수 b의 첫번째 부터 세번째 데이터 삭제
del b[:3]
print(b)

# 변수b의 첫번째 데이터를 문자 타입으로 변경
b[0] = str(b[0])
print(type(b[0]))
b = ['6', '7', '8', '9']

# 변수 b에 문자 10을 추가
b.append('10')
print(b)
# ['6', '7', '8', '9', '10']


# 변수 b에 리스트['11', '12'] 추가
b.extend(['11', '12'])
print(b)
# ['6', '7', '8', '9', '10', '11', '12']


# 변수 c를 오름차순 정렬
c = ['6', '9', '8', '7']
c.sort()
print(c)
# ['6', '7', '8', '9']


# 변수 d를 알파벳 순서대로 정렬
d = ['x', 'y', 'z']
d.sort()
print(d)
# ['x', 'y', 'z']


# 변수 c를 거꾸로 뒤집는다.
c.reverse()
print(c)
# ['9', '8', '7', '6']


# '9'의 인덱스 확인
print(c.index("9"))
# 0


# 리스트 c에 5번 위치에 문자 10 추가
c.insert(5, "10")
print(c)
# ['9', '8', '7', '6', '10']

 

 

▶ 연습문제

# We are the world로 출력
l = ['We', 'are', 'the', 'world']
print(" ".join(l))


# +를 이용하여 리스트 더하기
a = [8, 8, 8]
print(a + [1, 5])


# extend를 이용하여 리스트 더하기
a.extend(['cola'])
print(a)


# m_r에 롱 리브더킹을 추가하고 토이스토리와 기생충 사이에 슈퍼맨 리턴즈를 넣고 기생충을 제거하시오.
m_r = ['알라딘', '토이스토리', '기생충']
m_r.append("롱 리브더킹")
m_r.insert(m_r.index("토이스토리")+1, "슈퍼맨 리턴즈")
m_r.remove("기생충")
print(m_r)


# A와B를 둘다 가지고 있는 AB를 만드시오
A = ["BTS", "엑소", "뉴이스트"]
B = ["Black Pink", "아이즈원", "트와이스"]
AB = A + B
print(AB)


# 최대값 최소값 구하기
num = [1, 2, 3, 4, 5, 6, 7]
print(max(num), min(num))

# 리스트 합
print(sum(num))

# 리스트 평균
print(sum(num) / len(num))

# 날짜 배고 출력
price = ['20190625', 1000, 3000, 4000, 5000, 7000]
print(price[1:])

# 홀수 짝수 출력
num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(num[::2])
print(num[1::2])

# 거꾸로 출력
num = [1, 2, 3, 4, 5]
# 1 print(num[::-1])
# 2 num.reverse()
    print(num)

# second 빼고 출력
rank = ['first', 'second', 'third']
rank.remove('second')
print(rank)

# 슬래시 기준으로 자르기
string = "구글/아마존/페이스북"
wish = string.split("/")
print(wish)


# 세수 중에서 가장 큰 수 찾기.
li1 = []

li1.append(int(input("첫번째 정수를 입력하세요 : "))) 
li1.append(int(input("두번째 정수를 입력하세요 : ")))
li1.append(int(input("세번째 정수를 입력하세요 : ")))
print("입력된 세수 %d, %d, %d중에서 가장 큰 수는 %d입니다." % (li1[0], li1[1], li1[2], max(li1)))

 

반응형

'Python' 카테고리의 다른 글

[python] 논리 연산자  (0) 2022.08.24
[python] print()  (0) 2022.08.24
[python] null, 개행문자(\n)  (0) 2022.08.24
[python] input()  (0) 2022.08.24
[Python] Python, Number, String, Boolean type  (0) 2022.08.22