ABC 부트캠프 데이터 탐험가 4기

[4일차] ABC 부트캠프 : Jupyter Notebook 활용 및 Python 기초 (2)

marriina 2024. 7. 11. 01:19

1. 시퀀스 데이터 타입 (Sequence Types) : Python에서는 리스트(list), 튜플(tuple) 형식 등으로 다룸

  • 리스트 만들기 

 

salary = [5000, 6000, 7000, 6000, 9000]
print(salary)

[5000, 6000, 7000, 6000, 9000]

리스트 만들기 예시

  • 형식 확인
salary = [5000, 6000, 7000, 6000, 9000]
print(type(salary))

list

salary 변수에 저장된 데이터 타입을 확인하는 함수

 

  • 리스트의 메서드(method)  append() 활용
salary.append(10000)
salary

[5000, 6000, 7000, 6000, 9000, 10000]

append() 메서드는 리스트에 새로운 요소를 추가함

  • 인덱싱(indexing) 
salary[0]

5000

인덱스(index)는 각 요소의 위치를 나타내는 숫자, 인덱스는 0부터 시작함

  • 슬라이싱(slicing)
list[start:stop:step]

리스트의 일부 요소를 추출하는 기능, 슬라이싱을 사용하면 리스트의 특정 범위에 있는 요소들을 새로운 리스트로 반환

  • range( )를 활용한 수열 만들기
range(stop)
range(start, stop[, step])

list(range(10))
lists = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

연속적인 수열을 만들 때는 range( )를 활용, 다차원 리스트 생성 가능

  • 튜플(Tuple) 만들기
salary = (5000, 6000, 7000, 6000, 9000)

리스트와 유사하지만 수정할 수 없음

 

2. 맵핑 데이터 타입 (Mapping Types)

  • 딕셔너리:딕셔너리 키(key)  값(value) 을 연결한  을 활용해서 여러 값을 구분해서 저장, 딕셔너리는 중괄호 { }를 활용하고 아래와 같은 방법으로 생성합니다.
this_lecture = {'과정':'Python 기초', '도구':'Jupyter Notebook', '기간':'4일'}
this_lecture

{'과정': 'Python 기초', '도구': 'Jupyter Notebook', '기간': '4일'}

딕셔너리 생성 예시

  • 대괄호와 키를 활용한 선택과 메서드 get()을 활용한 선택
this_lecture['과정']
this_lecture.get('과정')


'Python 기초'

리스트의 인덱스 대신 키를 활용

  • 쌍 추가, 제거
this_lecture['수강인원'] = 20
{'과정': 'Python 기초', '도구': 'Jupyter Notebook', '기간': '4일', '수강인원': 20}

del this_lecture['기간']
{'과정': 'Python 기초', '도구': 'Jupyter Notebook', '수강인원': 20}

 

  • 딕셔너리 예시
name = input("이름을 입력하세요: ")
age = int(input("나이를 입력하세요: "))
major = input("전공을 입력하세요: ")
hobbies = input("취미를 입력하세요(쉼표로 구분): ").split(", ")

user_info = {
    "name": name,
    "age": age,
    "major": major,
    "hobbies": hobbies
}

print("사용자 정보:")
print("이름: ", name, "나이: ", age, "전공: " , major, "취미: " , hobbies)

사용자 정보:
이름:  이이름 나이:  21 전공:  전공1 취미:  ['취미1,취미2']

본인의 정보를 딕셔너리로 저장

 

3. 제어문

  • if 제어문: if 를 활용하여 특정한 상황에서만 명령어를 실행 가능, else elif를 추가로 활용 가능
score = 90 

if score > 0:
    print('응시')

if score >=80:
    if score == 100:
        print('EX')
    else:
        print('합격')
else:
    print('탈락')

응시
합격

if와 elif와 else의 활용

 

  • match : match는 반복적인 == 연산을 보다 쉽게 수행
num = 3
match num:
    case 1:
        print('1번 선택')
    case 2:
        print('2번 선택')
    case 3:
        print('3번 선택')
    case _:
        print('잘못된 입력입니다.')

3번 선택

match 예시

 

  • 반복문 : for, while는 반복 대상을 지정하고 특정한 명령을 반복 실행
total = 0
for i in [11,12,13]:
    total += i

print(f'합계는 {total}입니다.')

합계는 36입니다.

for문 예시

 

num = 1
while num < 5:
    print(num)
    num += 1

1
2
3
4

while 반복문 예시

 

  • 제어문 예제
numbers = [10, 20, 4, 45, 99, 18]

max_value = numbers[0] 
for num in numbers:
    if num > max_value:
        max_value = num

print(f"가장 큰 값: {max_value}")

가장 큰 값: 99

for문 안에서 if문을 활용