#ABC부트캠프 #유클리드소프트 #고용노동부 #대한상공회의소 #미래내일일경험사업 #인공지능 #파이썬 #머신러닝 #딥러닝
오늘은 기술 배움 1일차~!!
비가 많이 와서 교육장까지 가기 힘들었지만 어떻게든 도착!


오늘은 테크노트 작성방법을 설명해주시는 것을 시작으로 추가 전달사항에 대해 공지 해주시고 강의를 시작하였습니다.
Jupyter Notebook 활용 및 Python 기초
오늘 교육은 아나콘다라는 실습 플랫폼 설치로 시작했습니다.
아나콘다 플랫폼은 실습환경에 필요한 각종 라이브러리와 코드 작성을 위한 실습 환경을 제공합니다.
오늘의 주요 내용!!
- Jupyter notebook의 주요 기능 및 단축키 등 설명
- 라이브러리 활용 등 Python 기초 문법 리뷰
오늘의 목표!!
- Jupyter Notebook을 활용해서 Python 코드를 작성하고 실행할 수 있다.
- Python 기초 문법을 복습한다.
Jupyter Notebook 사용법과 기본 단축키
jupyter notebook은 여러 cell을 수직적으로 결합해서 문서를 만들거나 분석을 수행
상단 메뉴바와 아이콘을 활용하여 cell을 추가, 제거, 이동, 복사 가능
cell에 명령어를 입력하고 실행해서 결과 확인
이 코드의 결과는 어떨까요?
두 개의 사칙연산이 있으니 이렇게 나올까요?
정답은 18만 결과로 도출됩니다.
그 이유는 둘 다 계산은 하였지만 마지막에 계산한 값을 도출하게 된 것이죠
주석
위의 코드에서 뭔가 이상한 게 있죠?
# 뒤에 설명을 넣어두었는데요
이건 다른 사람이나 자신이 코드를 이해하기 쉽게 코드 실행에 영향을 주지 않는 설명란이라고 생각하면 좋을 것 같아요.
나름 전공자이지만 드래그해서 ctrl+/를 하면 모든 부분이 주석 처리되는 것은 오늘 알았네요..
주석 처리를 하면
이렇게 바뀐답니다.
1-2. 새 폴더와 새 노트북 파일 만들기
jupyter 메인 페이지에서 경로를 이동하거나 새 폴더 생성 가능
jupyter 메인 페이지 및 노트북 내 상단 메뉴 [File] > [New Notebook]에서 새 노트북 파일 생성
간단한 실습
새 노트북 파일에서 A, B 를 눌러 새로운 cell을 추가하고, M, Y를 눌러 마크다운과 코드로 형식을 바꿔봅시다. Enter를 누른 수정 모드에서 간단한 수식을 넣고 Ctrl+Enter로 실행하고, Shift+Enter로 다시 한번 실행한 다음 차이를 확인합니다. 다시 방향 키로 위의 cell로 이동한 다음 수정 모드에서 Ctrl+/를 눌러 작성한 스크립트를 주석 처리하거나 직접 #을 써서 주석을 입력해 봅시다.
[File] > [Download as]로 다양한 형식으로 노트북을 저장 가능
[Edit] > [Clear Outputs of All Cells]로 모든 실행 결과를 지울 수 있음
1. 새로운 Cell 추가 (A 또는 B)
2. Cell 형식 변경 (M 또는 Y)
마크다운 셀
이것은 마크다운 셀입니다. 굵게 또는 기울임과 같은 형식을 사용할 수 있습니다.
3. 수식 입력 및 실행
마크다운 셀에 다음과 같은 수식을 입력:
4. 주석 처리
코드 셀에서:
Ctrl+/로 주석 처리하거나 #을 사용하여 직접 주석을 입력합니다.
5. 출처 입력 및 다양한 형식으로 저장
- 노트북을 다양한 형식으로 저장하려면 [File] > [Download as]로 이동.
- 모든 실행 결과를 지우려면 [Edit] > [Clear Outputs of All Cells]로 이동
자 오전 수업이 끝났으니 밥을 먹어 볼까요? (중요)
오늘의 사건

오늘 구내 식당 이용이 불가하다는 공지를 보고 저희 조는 고민중이었는데요.
비도 많이 오니 걱정중이었죠..

이러는 중 저희의 생각을 읽으신걸까요

한 줄기 빛같은 공지
구내식당 이용 못한다는 공지와 피자 제공 공지의 공감 차이가 보이시나요
저희 팀도

안심하고 수업을 계속 수강하였습니다.ㅎㅎ

그리고 중간중간 배고픔과 당충전을 위해 준비해주신 과자와 음료수!!
이거 사라지면 끝일줄 알았는데 어디서 자꾸 다른 과자가 충전되어 있더라구요
항상 배려에 감사합니다


그리고 배달 온 피자 처음 먹어본 맛이었어요.
(피자를 처음먹어본건 아니구요.. 신기한맛..?)
잘 먹었습니다~~
2. Library 관리
Python을 활용해 데이터를 분석하기 위해서는 pandas와 같은 라이브러리 설치가 필수 pip 툴을 활용해서 라이브러리를 설치 가능
jupyter notebook 안에서 shell command를 실행하기 위해서 !를 앞에 붙임
라이브러리를 설치하기 위해서는 외부망 접속이 가능해야 하고, 외부망에서 소스 파일을 다운로드해 압축을 풀기 위해서는 특정 폴더에 대한 권한도 필요합니다.
2-1. Library 설치하기
"pip install"은 Python의 패키지 관리 시스템인 pip을 사용하여 패키지를 설치하는 명령어입니다.
이를 통해 다양한 외부 라이브러리와 패키지를 쉽게 설치하고 사용할 수 있어요.
2-2. Library 설치 확인
- 4개 결과 출력여부 확인
- openpyxl
- pandas
- plotly
- seaborn
위 4개의 라이브러리 설치를 확인하는 코드인데
저는 이전에 다른 라이브러리를 설치한 적이 있어 하나가 더 뜨네요.
3. 기본 문법
- 세미콜론: 한 줄에 여러 코드를 입력할 때 각 코드를 구별한다.
- #: 실행 코드가 아닌 설명을 위한 텍스트
- 들여 쓰기: Tab으로 들여쓰기
- 코드 블록: 복수의 명령 집합, 들여 쓰기를 기준으로 하며 동일 코드 블록은 동일한 들여 쓰기를 갖는다.
- 입력: input 내장 함수
- 출력: print, display 내장 함수
위의 내용과 비슷하지만 조금은 다른 코드입니다. 결과가 어떻게 나올까요?
이 코드의 결과는
이렇게 나옵니다. 그 이유는 코드를 위에서부터 순서대로 진행하였을 때
print라는 함수가 괄호 안의 값을 도출하고 2*3 계산 후 패스 1 + 1은 마지막 계산이니 도출하는 방식인 것이죠.
그럼 출력을 해주는 파이썬 함수는 어떤 것이 있을까요?
print와 display가 있습니다.
한번 실행해 볼까요?
다음으로 우리가 어떤 정보를 넣고 싶은데 계속 코드 안을 수정하기 싫을 때가 있잖아요
예를 들어 이름을 넣으면 어떠한 결과가 나오는 코드를 만들고 싶은데 코드 안에서 계속 이름을 바꿔주는 것보다는 실행하였을 때 내가 입력한 값으로 결과가 나오게 하는 함수가 있어요.
바로 input() 함수입니다.
예제로 확인해 볼까요?
이 코드를 실행하면
"이름을 입력해 주세요"라고 뜨고 내가 원하는 이름을 입력할 수 있어요.
4. Python 기초
4-1. 변수, 상수 그리고 리터럴
변수란 값을 저장하는 메모리 공간! 저장되는 값 자체를 리터럴이라고 한다. 상수는 기본적으로 변하지 않는 값이지만 파이썬에서는 표기법으로만 구분한다
자 아래 코드 통해 변수에 대해 설명드리겠습니다.
변수는 이름을 지을 때 규칙이 있어요.
- 영문 대/소문자를 구별
- 특수문자는 오직 "_"만 사용 가능
- 숫자로 시작할 수는 없지만 변수명 중간에는 가능
- 공백을 포함할 수 없음
자 위에 코드는 x라는 변수를 선언한 것입니다. 위의 규칙에 위배되는 사항은 없죠?
하지만 여기서 잠깐!
변수명은 x라고 하는 것보다 우리가 사용하는 목적에 맞는 변수명을 사용하는 게 좋아요.
예를 들어 나이를 변수로 설정한다면 age로 하는 게 나중에 알아보기 좋겠죠?
다시 위 코드로 돌아가서 x라는 변수를 선언하고 35의 값을 변수 x에 할당한 것입니다.
즉, x는 35의 주소를 대신하게 되는 것이죠.
하지만 x = 35만 코드에 넣으면 대입만 한 것이라 아까처럼 마지막에 있다고 해서 결과가 반환되지는 않아요
변수의 결과를 반환하고 싶다면?
변수 이름을 적어주시면 됩니다!!
그럼 위 코드에서는 35가 반환될 거예요.
이번엔 참조에 대해 알아보겠습니다.
선언, 할당, 참조
참조는 무엇일까요?
참조는 이미 만들어진 변수를 이름을 통해 불러서 사용할 수 있다는 것을 의미해요
아까 위에서 x를 35로 선언, 할당했었죠?
그럼 이 코드는 어떤 결과를 반환할까요?
c는 x(35)+10 이니 45의 값이 할당되고
print() 함수를 이용하여 결괏값을 도출하면 45가 도출되겠죠?
잘못된 변수명은?
inputScore
__age
cat house
dog&cat
정답은 cat house와 dog&cat입니다
그 이유는 cat house에는 공백이 포함되어 있고 dog&cat에는 &의 특수문자가 사용되어 잘못된 변수명입니다.
[연습 1] 입력 함수 input()을 사용하여 이름, 나이, 주소를 입력받아 변수에 저장한 후 출력하시오.
배운 것을 활용하면 간단하죠? 조금 다른 점이 있다면 차후 나올 예정입니다.
위에 나온 내용으로 풀어도 결과는 같아요!
4-2. 파이썬 데이터 타입과 연산자
파이썬은 다양한 데이터 타입을 제공한다.
Numeric, Boolean, Text, Sequence, Set 등
숫자형 데이터 타입 (Numeric Types)
x와 y의 데이터 타입은 무엇일까요?
x는 정수이니 타입은 int
y는 실수이니 타입은 float
입니다.
# 정수(integer)는 0을 포함한 소수점 없는 수
## 1, -10, 0
# 숫자를 활용한 산술 연산자
## +, -, *, /, //, %, **
# 대입 연산자
## +=, -=, *=, /=
# 연산자 우선순위
a = 1 + 3 * 2
내가 만약 정수로 10을 받고 실수로 3.14를 받았는데 둘의 데이터 타입을 바꾸고 싶다
라면 위 코드처럼 int() 안에 실수 float() 안에 정수를 넣으면 데이터 타입이 바뀌는 것을 확인하실 수 있습니다.
[연습] x에 10.1을 저장하고, y에 101을 저장한 다음 더하기
[연습] 21을 8로 나눈 몫과 나머지 구하기
[연습] 실수 3.14를 정수형 타입으로 변경하기
논리형 데이터 타입 (Boolean Type)
# 참과 거짓을 나타내는 데이터 타입
## 참(True), 거짓(False)
True
False
# 형 변환
bool('1')
## 거짓으로 취급되는 다양한 값들
## 1. None, False
## 2. 0, 0.0
## 3. '', (), [], {}, set(), range(0)
# 논리형 값이 도출되는 연산 - 비교 연산자
# 논리형 값의 연산 - 논리 연산자 and, or, not
# and
x = True and True
x = True and False
x = False and True
x = False and False
# or - 각자 해보고 결과 출력하기
True or True
True or False
False or False
False or True
# not
not True or False = False or Fals
[연습] 변수 x가 10 이상 99 이하인지 확인하는 연산을 비교연산자와 논리연산자를 활용하여 구성하시오
- x = 20
[연습] 변수 x가 3의 배수인지 확인하는 연산을 구성하시오
- x = 20
[연습] 변수 x가 3의 배수이면서 동시에 7의 배수인지 확인하는 연산을 구성하시오
- x = 210
[연습] 변수 score가 80점대 인지 확인하는 연산을 구성하시오
- x = 85
[연습] 변수 x가 3의 배수이고 7의 배수가 아닌지 확인하는 연산을 구성하시오
- x = 60
[연습] x가 y보다 크고, y가 z보다 작은지 확인하는 연산을 구성하시오
- x = 10
- y = 5
- z = 15
문자형 데이터 타입 (Text Sequence Type)
# 문자열 (str)은 큰따옴표(") 또는 작은따옴표('), 세 따옴표(''', """) 쌍으로 표시
x = '안녕하세요'
# 문자열을 활용한 연산 ( + , * )
## 덧셈(+), 곱셈(*)
# 문자열 포멧팅
## printf-style String Formatting | format % values
## %로 시작하며
"나는 %s를 좋아합니다" % '고양이'
## format method
"나는 {}를 좋아합니다.".format('고양이')
## f-strings
f"나는 {'고양이'}를 좋아합니다."
# 문자열 다루기
## 인덱스
message = "hello python!"
message[0]
## 인덱싱과 슬라이지
## object[index]
## object[start:end:step]
# 문자열 다루기 - 함수와 메서드
## len, count
## find, index, split, join, upper, lower, replace
len("abc")
"abcd".replace('a', '1')
"abcd".find('b')
"abcd".index('e')
[연습] a=1, b=5로 할당하고 문자 'a + b는'과 a+b 계산 결과를 print( )로 함께 출력
[연습] text를 모두 대문자로 변환하여 출력하시오.
text = "Python is Fun!"
[연습] 문자열 "Python"을 추출하여 출력하세요.
text = "Learning Python is fun!"
[연습] text에서 "programming"을 "Python"으로 교체하여 출력하세요.
text = "I love programming."
여기까지가 오늘의 강의 내용이었습니다 내일은 파이썬 2일차로 돌아오겠습니다.~~
'ABC부트캠프' 카테고리의 다른 글
[6일차] ABC 부트캠프 : 파이썬프로그래밍4 (24.07.11) (1) | 2024.07.12 |
---|---|
[5일차] ABC 부트캠프 : 파이썬프로그래밍3 (24.07.10) (1) | 2024.07.12 |
[4일차] ABC 부트캠프 : 파이썬프로그래밍2 (24.07.09) (0) | 2024.07.10 |
[2일차] ABC 부트캠프 : ESG 포럼&세미나 (24.07.05) (0) | 2024.07.08 |
[1일차] ABC 부트캠프 : 4기 시작 ~ (24.07.04) (1) | 2024.07.07 |