파이썬 기초 1 - 03 리스트

핏자·2023년 4월 3일
0

인공지능사관학교

목록 보기
3/31
post-thumbnail
  • 리스트 활용

1. list.append(d)

자료 d를 리스트 마지막 원소 뒤에 추가

오직 한 개의 자료만 넣을 수 있다

a = []
b = ['a', 'b', 'c']
a.append(10)
b.append('d)
print(a,b) #[10]['a','b','c','d']

2. list.insert(i, d)

인덱스 i자료 d를 추가.

오직 한 개의 자료만 넣을 수 있다.

c = [1, 2, 3, 4, 5]
c.insert(2, 3)
print(c) # [1, 2, 3, 4, 5]

3. list.remove(d)

처음 나오는 자료 d를 제거

중복시 인덱스가 작은 원소 제거

d = [3, 1, 2, 3]
d.remove(3)

print(d) # [1, 2, 3]

4. list.sort()

리스트를 정렬

숫자형은 오름차순, 문자열은 사전순

"같은" 자료형만! 리스트 내부 다른 자료형 있으면 사용X!

e = [6, 2, 4, 1]
f = ['carrot', 'apple', 'banana']
e.sort()
f.sort()
print(e, f) # [1, 2, 4, 6]['apple', 'banana', 'carrot']



  • 시퀀스 자료형

순서가 있는 자료형!

리스트, 문자열 등이 이에 속함

a = "Once" #문자열
b = ['t', 'w', 'i', 'c', 'e'] #리스트
c = (1, 2, 3, 4, 5) #튜플

시퀀스의 특징

1. 원소간의 순서가 존재

-> 인덱싱/슬라이싱이 가능하다.

a = "Once"
b = ['t', 'w', 'i', 'c', 'e']
print(a[1]) #n
print(b[2:4]) #['i', 'c']

인덱싱/슬라이싱을 할때

음수를 넣거나, 자리를 비우는 것도 가능

a = "Once"
b = ['t', 'w', 'i', 'c', 'e']
print(a[-1]) #E | 뒤에서 1번째 원소
print(b[:3]) #['t', 'w', 'i'] | 처음~3번째 슬라이싱

2. 멤버 조회

in 연산자로 스퀀스 안에 원소가 있는지 확인 가능

a = "once"
b = ['t', 'w', 'i', 'c', 'e']
print('o' in a) #True 
print('b' in b) #False

3. 길이 확인

len 연산자로 시퀀스 안에 원소가 몇 개 인지 확인 가능

a = "once"
b = ['t', 'w', 'i', 'c', 'e']
print(len(a)) #4
print(len(b)) #5

4. 연결 연산

+연산자로 같은 시퀀스 두개를 이어 붙일 수 있다.

c = ['t', 'w', 'i'] + ['c', 'e']
print(c) #['t','w','i','c','e']

5. 반복 연산

*연산자로 시퀀스를 반복 할 수 있다

d = "shy" * 3
print(d) #shyshyshy







  • 실습문제1. 무기강화

    세 문자열 item1, item2, item3이 주어졌을 때, 이들을 이어붙인 문자열 + "무기" 형태의 무기 weapon이 완성된다
    -변수와 시퀀스의 연결 연산을 이용해서 작성

item1 = "강력하고"
item2 = "강하며"
item3 = "강인한"

weapon = item1 +" "+ item2 + " " + item3 +" "+ "무기"
print(weapon)
>>> 강력하고 강하며 강인한 무기
  • 실습문제2. "똑똑한".remove() 사용법

    리스트에서 .remove()는 원소는 삭제하는데에 쓰이지만, 만약 그 원소가 리스트 내부에 없을 경우, 오류가 발생하게 된다. 따라서 지우려는 원소가 리스트에 있는지 확인한 다음, 원소를 지우거나 다른조치를 취하여라
    -원소가 있다면 : 해당 원소를 리스트에서 지운다.
    -원소가 없다면 : 해당 원소가 리스트 안에 없다는 문장을 출력("원소은(는) 리스트 안에 없습니다!")<

# 과일들이 담긴 리스트 fruits입니다.
fruits = ['Apple', 'Banana', 'Chamwae', 'Durian']

# 지시사항에 맞추어 "Durian"을 fruits에서 지워봅시다.
if "Durian" in fruits:
    fruits.remove("Durian")
else:
    print("원소는 리스트 안에 없습니다!")

# 지시사항에 맞추어 "Pineapple"을 fruits에서 지워봅시다.
if "Pineapple" in fruits:
    fruits.remove("Pineapple")
else :
    print("원소는 리스트 안에 없습니다!")

print(fruits)
>>> 원소는 리스트 안에 없습니다!
['Apple', 'Banana', 'Chamwae']
profile
개발자 핏자의 로그들

0개의 댓글