[데이터사이언스12기-스터디노트] 파이썬(23.02.17.)

도윤수·2023년 2월 20일
0

Python스터디노트

목록 보기
16/16
post-thumbnail

📝스터디노트 16일차 범위

자료구조 ()

📖 자료구조

‣ 대표적인 컨테이너 자료형으로는 리스트(list), 튜플(Tuple), 딕셔더너리(Dic), 셋트(Set)이 있다.
‣ 리스트는 값을 계속 변경할 수 있지만, 튜플은 정해진 값을 변경할 수 없다.
‣ 리스트는 리스트 안에 리스트가 중첩이 가능하다. ex) [10,20,30,[15,25,35],40]
‣ 딕셔너리는 키 값, 밸류 값이 있다.
‣ 셋트는 박찬호 라는 학생이 둘이 있을 수 있지만, 중복이 안된다. 리스트와 튜플은 중복 가능

student1 = '박찬호'
student1 = '홍길동'
student1 = '박지성'
student1 = '차범근'
student1 = '손흥민'
student1 = '김민재'

#list
students = ['박찬호', '홍길동', '박지성', '차범근', '손흥민', '김민재']
print(student1)
print(students)
print(type(students))

# for i in range(10):
#     print(j)

for student in students:
    print(student)  #튜플에도 적용할 수 있다.


#tuple
students = ('박찬호', '홍길동', '박지성', '차범근', '손흥민', '김민재')
print(students)
print(type(students))

# key, value
scores = {'kor':95, 'eng':80, 'mat':95}
print(scores)
print(type(scores))

#set
allSales = {100, 200, 500, 200} #중복값은 나오지 않는다.
print(allSales)
print(type(allSales))

student1에 6명의 인물을 넣어두고 list(리스트), tuple(튜플), dict(딕셔너리), set(세트)로 표현해봤다.
1. student1을 출력했을 땐 제일 마지막에 입력된 '김민재'가 나오는게 맞고,
2. for 문으로 students 에 있는 student를 하나하나 뽑아낼 수도 있다.
3. 딕셔너리는 key값, value값이 있고,
4. set은 중복값은 표현되지 않는다.

5. 리스트는 리스트안에 리스트가 들어가는 중첩이 가능하다.

list(리스트) 아이템은 인덱스로 조회가 가능하다.
파이썬은 0부터 시작하기 때문에 반복문에서 입력값의 -1까지 갔던것과 같은 논리로 생각하면 된다.

myFamilyNames = ['홍아빠', '홍엄마', '홍길동', '홍동생']
print(myFamilyNames[2]

-> 0:홍아빠, 1:홍엄마, 2번은 홍길동이 나오고, 3:홍동생

이 인덱스를 연습해보면 이렇다.

#index(인덱스 연습)
#인덱스가 홀수인, 짝수인 학생들로 나누기.
students = ['박찬호', '홍길동', '박지성', '차범근', '손흥민', '김민재']

for i in range(6):
    if i % 2 == 0:
        print('index가 짝수인 경우 --> students[{}]: {}'.format(i, students[i]))
    else:
        print('index가 홀수인 경우 --> students[{}]: {}'.format(i, students[i]))

print('index가 짝수인 student')
print('students[0]: {}'.format(students[0]))
print('students[2]: {}'.format(students[2]))
print('students[4]: {}'.format(students[4]))
print('index가 홀수인 student')
print('students[1]: {}'.format(students[1]))
print('students[3]: {}'.format(students[3]))
print('students[5]: {}'.format(students[5]))

for 문으로 반복하면서 짝수 index 학생들과, 홀수 index 학생들을 구분하여 출력할 수 있다.

★ 어려웠던 점 ★
1. init이 정확히 무슨 역할을 하는지 이해하지 못했다.
⇨ 이렇게 함수부분, 실행부분을 잘 나눌줄 알아야 효율적인 코드를 짤 수 있다는 얘기를 보았는데 아직 머릿솔에서는 한화면에 코드를 짜내야 한다는 강박(?) 같은게 있어서 구분이 안되는 것 같다. 이런 형태의 코드를 많이 보다보면 지금까지 해온것 처럼 익숙해져야할 것 같다...

매개변수가 없는 클래스의 실행 과정이 어떻게 되는지 모르겠다.(calculator)
⇨ 실행단에서 각 매개변수의 인수를 선언해주어야한다.

그 와중에 속성 변경도 가능하다.

🔥🔥바쁜시간 쪼개서 매일매일 성장해 나가는 모습을 기록하자🔥🔥

profile
DataScience를 하고 싶은 DoIT

0개의 댓글