딩굴댕굴

Python - 08.리스트 자료형

by jennysgap

BOX

리스트 자료형

8.1 리스트
• 여러개의 데이터를 저장할 수 있다.
• 어떠한 자료형이든지 함께 저장할 수 있다.
• 리스트를 표현하는 방법은 저장할 데이터를 대괄호로 감싸고 쉼표로 구분한다.
• 비어있는 리스트는 [] 이와 같이 표현한다. 

my_list = [3,6,9,12,15]

my_list = ['a','b','c','d','e']

my_list = []


8.2 리스트 인덱싱

• 리스트 하나의 데이터(원소)에 접근(참조)

• 인덱스 번호를 사용한다.

• 번호는 0부터 시작한다. n-1 값을 넘지 못한다.

my_list = [1,3,5,7,9]

result = my_list[0] + my_list[1] + my_list[2] + my_list[3] + my_list[4]

print(result)

my_list = [1,3,5,7,9]
result = my_list[-5] + my_list[-4] + my_list[-3] + my_list[-2] + my_list[-1]
print(result)
my_list = ['a','b','c','d','e']
result = my_list[-5] + my_list[-4] + my_list[-3] + my_list[-2] + my_list[-1]
print(result)
my_list = ['Hello',5]
result = my_list[0] * my_list[1] 
print(result)
name = ['이청용', '구자철', '손흥민', '박지성', '기성용']
score = [3, 2, 5, 10, 9]

print(name[0], '✭' * score[0])
print(name[1], '✭' * score[1])
print(name[2], '✭' * score[2])
print(name[3], '✭' * score[3])
print(name[4], '✭' * score[4])
my_list = ['Hello', 5, 3.14, True]
print(my_list[0], '의 자료형:', type(my_list[0]))
print(my_list[1], '의 자료형:', type(my_list[1]))
print(my_list[2], '의 자료형:', type(my_list[2]))
print(my_list[3], '의 자료형:', type(my_list[3]))

8.2.1 연습문제1

favorite_fruits = ['사과', '배', '바나나', '메론', '수박', '포도'] print(favorite_fruits[0]) print(favorite_fruits[1]) print(favorite_fruits[2]) print(favorite_fruits[3]) print(favorite_fruits[4]) print(favorite_fruits[5])


# 다른 표현

print(favorite_fruits)


8.2.2 연습문제2

list_odd = [1, 3, 5, 7, 9, 11, 13, 15, 17, 19] print(list_odd) print(list_odd[0]+list_odd[1]+list_odd[2]+list_odd[3]+list_odd[4]+list_odd[5]+list_odd[6]+list_odd[7]+list_odd[8]+list_odd[9])


8.2.3 연습문제3

mark = input('표시할 문자를 입력하세요.') score = [1, 2, 3, 4, 5, 6, 7, 8] print(mark * score[0]) print(mark * score[1]) print(mark * score[2]) print(mark * score[3]) print(mark * score[4]) print(mark * score[5]) print(mark * score[6]) print(mark * score[7])


8.3 리스트 슬라이싱

• 인덱싱이 된다는 말은 슬라이싱도 된다는 말

• 인덱스 번호를 사용

• my_list = [3, 6, 9, 12, 15]

    new_list = my_list[2:5]

mylist = [123, 234, 345, 456, 567, 678, 789, 890, 901]
print(mylist)

mylist2 = mylist[2:5]
print(mylist2)

mylist3 = mylist[:4]
print(mylist3)

mylist4 = mylist[7:]
print(mylist4)
my_list = ['p', 'r', 'g', 'r', 'a', 'm', 'i', 'z']
list1 = my_list[2:5]
print(list1)
print(my_list[:-5])
print(my_list[5:])
print(my_list[:])
print(type(list1))


8.3.1 연습문제1

mylist = [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
newlist = mylist[3:7]
print(newlist)


8.3.2 연습문제2

mylist = ['박지성', 7, '손흥민', 10, '기성용', 8]
newlist = [mylist[0], mylist[2], mylist[4]]
print(newlist)
print(type(newlist))


8.4 리스트 더하기, 반복하기

mylist1 = [1,3,5,7,9]
mylist2 = [2,4,6,8,10]

newlist = mylist1 + mylist2
print(newlist)

newlist = mylist1[2:4] + mylist2[:3]
print(newlist)
mylist = ['apple', 'banana']
newlist = mylist * 5
print(newlist)


8.5 리스트의 데이터 변경

mylist = [1,2,3,4,5]
print(mylist)
mylist[0] = 'a'
mylist[2] = 'b'
print(mylist)
print(mylist[3:5])
mylist[3:5] = ['c', 'd', 'e']
print(mylist)


8.6 리스트의 데이터 삭제

mylist = [1,2,3,4,5,6,7,8,9]
print(mylist)
del(mylist[3])
del(mylist[4])
print(mylist)

mylist[1:5] = []
print(mylist)


8.6.1 연습문제1

mylist = ['a', 'b', 'c', 'd', 'e', 'f']
del(mylist[0])
mylist[1:4] = []
print(mylist)


8.6.2 연습문제2



8.6.3 연습문제3



8.7 리스트 관련 함수들

• append    리스트 마지막에 데이터 추가

• sort          리스트 정렬

• reverse     리스트 뒤집기

• index        특정 데이터 인덱스 찾기

• insert       리스트 중간에 데이터 삽입

• remove    특정 데이터 삭제

• pop          데이터 팝 (제일 끝 값 삭제)

• count       데이터 개수 구하기

• extend     리스트 더하기

mylist = [1,4,3,2]
mylist.sort()
print(mylist)

mylist = ['x', 'e', 'a', 'c']
mylist.sort()
print(mylist)

mylist = ['라', '나', '가', '사']
mylist.sort()
print(mylist)

mylist = ['a', 'b', 'c', 'd'] mylist.reverse() print(mylist)

mylist = [1,2,3] var = mylist.pop()    # 맨 끝 값 출력 및 삭제 print(mylist) mylist = [1,2,3] var = mylist.pop(1)   # 원하는 위치 값 출력 및 삭제 print(mylist)

mylist = [1,2,3,1,5,1] num = mylist.count(1) print(num)

mylist = [1,2,3]
mylist.extend([4,5])
print(mylist)



반응형

'BOX' 카테고리의 다른 글

모의해킹 파이썬 공부법  (0) 2017.01.25
Python - 09.객체와 클래스  (0) 2017.01.24
보안 관련 학습 로드맵  (0) 2017.01.23
인터뷰 - 현대오토에버의 화이트 해커  (0) 2017.01.23
Python - 복습 겸 연습문제 풀기  (0) 2017.01.21

블로그의 정보

jennysgap

jennysgap

활동하기