스터디 그룹/ProjectH4C

ProjectH4C 1개월 2주차 과제 (UNIT 10, 11, 12)

📖 UNIT 10. 리스트와 튜플 사용하기

📒리스트 만들기

리스트 = [값1, 값2, 값3]

이렇게 묶을 수 있다. 리스트에는 여러가지 자료형을 동시에 저장시킬 수 있다.

person = ['james', 17, 175.3, True]
a = []
b = list()

이 두개의 코드를 통해 a,b를 빈 리스트로 만들어줄 수 있다.

range를 이용하여 리스트를 만들 수도 있다.

이렇게 만들어줄 수 있다. 

이런 것두 가능하다.

 

📒튜플 만들기

튜플도 리스트랑 비슷하다. 하지만, 리스트랑은 다르게 값을 수정하지 못한다.

그럼 튜플을 왜 사용할까? 바로 실수를 막기 위해서이다. 실수로 값을 지우게된다면 윽...

 

element가 한개인 튜플도 만들 수 있다.

a=(1,)

이렇게다. 그럼 이건 왜 사용할까. 바로 몇몇 함수들이 튜플을 인자로 받기 때문이다. 아직은 잘 모르겠지만 나중에 사용할 것 같다.

요렇게 리스트를 튜플로 만들 수 있다. 마찬가지로 list함수를 이용하여 튜플을 리스트로 만들 수 있다.

 

📖 UNIT 11. 시퀀스 자료형 활용하기

📒시퀀스 자료형의 공통기능 사용하기

 

이걸 통해 보면 알 수 있듯이 시퀀스 자료형들은 모두 값들이 연속적으로 나가게 된다.

먼저 시퀀스 자료형 안에 특정 값이 있는지 알아보자.

a = [11, 21, 31, 41, 51, 61, 71, 81, 91]
31 in a
50 in a

이렇게 특정 값이 시퀀스 자료형 안에 있는지 알 수 있다.

a = [1, 2, 3, 4, 5]
b = [6, 7, 8, 9, 10]
c = a + b

이렇게 하면 두 자료형을 합칠 수 있다.

+ 연산자는 앞 뒤 데이터의 타입이 같아야 한다. 또한 range는 +연산자로 붙일 수 없다.

[1,2,3,4,5] * 3

시퀀스 자료형은 이렇게 * 연산을 통해 반복시킬 수 있으나, range는 불가능하다.

 

📒시퀀스 자료형의 요소 개수 구하기

len함수를 이용하여 구할 수 있다.

hello='안녕하세요'
len(hello.encode('utf-8'))

이렇게 해주면 utf-8의 길이도 구할 수 있다.

hell로 오타를 낸건 비밀 ㅎㅎ

 

📒인덱스 사용하기

 

이 결과를 분석해보자.

먼저 c언어와 마찬가지로 idx는 0부터 시작한다.

그리고 특정 인덱스의 값을 가져올 때는 __getitem__()을 사용한다.

 

또한 음수 인덱스도 사용할 수 있다.

음수 인덱스는 뒤에서부터 시작한다.

마지막 요소에는 이렇게 접근할 수 있다.

이렇게 del 함수를 통해 특정 element를 지울 수도 있다. 

 

📒슬라이스 사용하기

 

이렇게 슬라이스 기능도 사용할 수 있다 .

 

📖 UNIT 12. 딕셔너리 사용하기

📒딕셔너리 만들기

지금까지 살펴봤던 리스트와 튜플은 각 값은 모두 고유한 값일 뿐, 연관관계는 없었다.

lux = {'health': 490, 'mana': 334, 'melee': 550, 'armor': 18.72}

 하지만, 위와같은 자료형을 보게된다면, 체력이 490, 마나가 334, 사거리가 550, 공격력이 18.72라는 걸 알 수 있다.

이런 자료형을 딕셔너리라고 한다. 딕셔너리={key1 : val1, key2 : va2}와 같은 형태를 띈다.

이런 특성을 key-value pair라고 부른다. 키가 중복된다면 가장 마지막의 값만 사용한다.

 

키에는 리스트와 딕셔너리를 사용할 수 없지만, 값에는 리스트와 딕셔너리 까지 사용할 수도 있다.