일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 항해99
- aws
- 중간이들
- 코드잇
- 파이썬프로그래밍기초
- 방송대
- 99클럽
- 꿀단집
- 코딩테스트
- Git
- redis
- SQL
- JavaScript
- node.js
- Cookie
- 방송대컴퓨터과학과
- TiL
- presignedurl
- nestjs
- HTML
- 개발자취업
- Python
- 엘리스sw트랙
- 파이썬
- 유노코딩
- CSS
- 프로그래머스
- 코딩테스트준비
- 데이터베이스시스템
- MySQL
- Today
- Total
배꼽파지 않도록 잘 개발해요
방송대 파이썬 프로그래밍 기초 - 4강. 파이썬 시작하기 본문
1. 프로그래밍 기초
숫자와 문자
• 숫자
- 정수(integer) : 소수점이 없는 숫자 (ex. 53000000)
- 실수(floating point) : 소수점이 포함되는 숫자 (ex. 3.141592)
→ 정수와 실수 표현 방법이 따르기 때문에 파이썬 내부에서는 서로 다르게 표현함.
※ 정수와 실수 표현 방법 → 별도로 공부
• 문자
- 유니코드(unicode) 기반 문자 또는 문자열 (파이썬 3.0부터 모든 문자를 유니코드로 처리)
- 유니코드 : 전 세계 모든 문자들을 표현하기 위해 가변 길이의 4byte로 문자를 표현하는 코드 체계
- 인용 부호 " 또는 ' 를 사용하여 표현
- 문자가 하나이든, 여러 개이든 파이썬에서는 모두가 문자 타입
ex. "Hello World!"
• 파이썬에서는 데이터값 자체를 입력하면 동일하게 반복하여 출력함. (에코기능)
• 인용부호 “ ”와 " "는 다름.
→ 아래아한글이나 MS Word에서 복사해 붙인 코드는 파이썬 인터프리터가 인식하지 못하여 에러가 발생할 수 있으니 주의할 것
기본연산자와 표현식
• 피연산자와 연산자를 이용한 표현식은 파이썬 인터프리터에 의해 자동 계산
• 기본연산자
연산자 | 기능 |
+ | 더하기 |
- | 빼기 |
* | 곱하기 |
/ | 나누기 |
** | 지수(거듭제곱) |
• 에코 기능 : 연산자를 쓰면 전체 표현식을 실행해서 남은 값을 다시 한번 반복해서 보여줌
• 사칙연산은 일반적인 연산자 우선순위에 따라 계산됨.
• 문자와 문자의 덧셈은 문자를 순서대로 붙여서 출력함.
"computer"+"science" → computerscience
문자열 결합(String Concatenation)이 이루어진 것을 확인할 수 있음.
• 문자열에 숫자를 곱하면, 해당 문자열이 숫자만큼 반복되어 출력됨.
"computer" * 2 → computercomputer
함수
• 함수(function)
- 프로그래밍의 근간을 이루는 중요한 개념
- 특정 작업을 수행하는 코드의 집합(명령문의 집합)
- 함수의 이름만을 호출하여 여러 개의 명령문을 한 번에 실행할 수 있는 단위
ex. print 함수 : 화면에 데이터를 출력하는 작업
• 함수의 기본구조
- Hello World라고 하는 문자열을 print함수에 넣어주는 것
• 함수의 실행
수학에서의 함수와 비교하면 원리가 같음을 알 수 있음.
x = 47, f(x) = x + 3 → x에 47을 대입하여 47 + 3을 수행함 → 50을 출력 |
x 자리에 "Hello World" 입력 → print(x) : 화면에 x 출력 → 화면에 "Hello World"를 출력 |
print함수는 파라미터로 넘어온 값을 그대로 모니터에 출력해줌.
간단한 계산은 에코를 쓰지만 출력결과를 만들어내야 할 때는 무조건 print함수를 사용해야 한다.
print함수를 활용해서 여러 줄을 출력할 수 있음.
에코기능을 활용해 문자열을 나열(print함수 X)하면 마지막 한 줄만 나타남.
들여쓰기
• 파이썬은 들여쓰기에 의존적인 언어 → 들여쓰기를 함부로 하면 안 됨.
• 타 프로그래밍 언어에서는 가독성 향상이 목적이나, 파이썬에서는 코드의 논리적 집합인 블록을 표현함
• 들여쓰기는 스페이스 4칸을 권장(PEP 8), 블록 중첩 시 추가적인 4칸 들여쓰기 삽입
문서화
• 주석(comment) 사용
- 가독성 증대로 개발 속도 향상, 유지보수 용이
- 실제 프로그램 실행에 영향을 주지 않음
- 코드를 읽는 사람을 위해 작성 → 주석 사용의 습관화는 좋은 코드를 작성할 수 있는 밑바탕
· 한 라인 : 주석에 #을 사용
· 여러 라인 : 주석에 """ 또는 ''' 3개를 연달아 사용
2. 데이터 저장
원뿔의 부피&겉넓이 계산 프로그램
원뿔의 부피&겉넓이 계산 알고리즘부터 만들어야 한다.
주어진 수식을 어떻게 코드화하면 좋을지 생각해야 함.
반지름을 20, 높이를 30으로 가정하였을 때 다음과 같은 결과가 나옴.
그러나 다양한 반지름과 높이를 여러 번 사용한다면 아주 비효율적인 코드가 됨.
→ 어디 한 군데 저장해두고 불러와서 쓰는 게 편하다는 걸 알 수 있음. (변수 도입의 필요성)
변수(variable)
• 명령형 패러다임 언어의 특징
- 처리할 데이터와 처리된 결과를 임시적 저장
- 변수의 값을 변경하는 할당연산자(=)를 이용
lvalue = 지속되는 대상
rvalue = 임시적인 대상
여기서 등호의 의미는 수학과 다름.
rad = 20 에서 '='는 할당연산자로, 오른쪽에 있는 값(20)을 왼쪽 변수(rad)에 집어 넣으라는 의미임.
값의 할당과 변수의 사용
• 값의 할당
- 프로그램이 실행되는 과정에서 처리되는 값이 어떤 행위(입력, 연산 등)에 따라 그 값을 식별자(변수, 상수 등)에 연결하여 메모리 내의 저장 공간을 지정하는 과정
- 식별자, 저장 공간, 값으로 할당문이 완성됨.
• 식별자(IDentifier) :
- 값을 저장할 메모리 공간에 부여하는 고유한 이름
- 식별자를 통해 프로그램에서 해당 메모리 공간에 접근할 수 있음.
→ 프로그램 내부에 정의된 객체(변수, 함수 등)의 이름
·문자, 숫자, 밑줄로 구성 | O : volume, 부피 X : R+H |
·문자 또는 밑줄로만 시작 가능, 숫자로 시작 불가능 | O : graduate999 , _pythonic X : $_$ , 1-abc , 2023y |
·예약어와 동일할 수 없음 | X : class, else, in, True, return |
·길이 제한이 없음 |
·예약어(reserved word) :
- 파이썬 인터프리터에 의해 이미 문법적인 용도로 사용되어 식별자로 사용이 불가능한 단어
- 함수, 변수를 제대로 만들었음에도 에러가 발생한다면 그 변수나 함수명이 예약어일 수 있다는 의심이 필요함.
• 저장 공간 :
- 값이 메모리에 실제로 저장되는 공간
- 이 공간은 식별자와 연결되어 해당 식별자가 가리키는 값을 저장함.
• 값(Value) :
- 프로그램이 처리하는 데이터를 나타냄.
- 이 값이 메모리에 저장되고, 해당 식별자와 연결되어 프로그램에서 참조할 수 있음.
식별자를 '20'으로 저장한 후 실제 메모리의 저장공간에 값 20을 저장함.
20이 저장된 칸은 rad라는 이름으로 접근 가능함.
• 변수의 사용
- 그냥 변수의 이름만 호출하면 됨.
lvalue = 값 할당, rvalue = 값 호출
값을 호출할 때는 rvalue를 이용해서 함.
3. 산술 연산자
산술연산자
• 산술연산자 : 피연산자(operand)에 대해 지정된 산술연산을 지시하는 기호
• 연산자와 피연산자
- 연산자 : 연산을 수행하는 기호 (ex. *)
- 피연산자 : 연산의 대상 (ex. 3.14, rad)
• 단항 연산자와 이항연산자
·단항 연산자(unary operator) : 피연산자가 하나인 연산자
- 부호변환 : +5, -10
- 증감 연산 : a++, b--
·이항 연산자(binary operator) : 피연산자가 두 개가 있어야 하는 연산자
- 사칙연산 : 3 + 4, 10 * 2, 7 / 3
- 비교 연산 : 5 > 3, 10 == 5, 7 != 9
- 논리 연산 : true && false, false || true, !true
• 특수 산술연산자
- 프로그래밍 언어에서만 사용되는 연산 또는 부호
·정수 나눗셈 연산자(//) : 나누기 후 몫만 가져오는 연산자
·모듈로 연산자(%) : 나누기 후 나머지값만 가져오는 연산자 → 짝홀수 판별에 많이 사용됨.
ex. '10%3'을 입력하면 답이 1이 나옴.
연산자 우선순위
• 표현식에 사용된 여러 연산자의 연산 순서를 결정
1) 괄호 내부의 수식
2) 지수(**) 연산자
3) 곱셈, 실수 나눗셈, 정수 나눗셈, 나머지 연산자 : 왼쪽 → 오른쪽
4) 덧셈, 뺄셈 연산자 : 왼쪽 → 오른쪽
5) 할당 연산자 : 항상 젤 마지막 rvalue값 다 계산하고 lvalue로 넘어감
파이썬 내장 함수
• 파이썬 인터프리터에서 기본적으로 지원하는 함수
• 별도의 모듈이나 패키지 없이 사용 가능
ex. print, max, min, round, abs, pow 등
※ 정재화 교수님 Github 계정에서 실습할 코드 다운받기
정재화교수님 깃헙(github)주소
jaehwachung - Overview
jaehwachung has 3 repositories available. Follow their code on GitHub.
github.com
Open in Colab 버튼 누르기
깃헙에서 받아왔다는 의미임.
'구글 드라이브로 복사' 누르기 → 새 탭이 생성됨.
GitHub의 파일들이 나의 Google Drive계정으로 복사됨.
이 상태에서 실습을 진행하면 됨.
'방송대 컴퓨터과학과 > 파이썬 프로그래밍 기초' 카테고리의 다른 글
방송대 파이썬 프로그래밍 기초 - 6강. 선택구조 (0) | 2023.04.10 |
---|---|
방송대 파이썬 프로그래밍 기초 - 5강. 제어구조 (0) | 2023.04.08 |
방송대 파이썬 프로그래밍 기초 - 3강. 파이썬의 이해 (0) | 2023.04.07 |
방송대 파이썬 프로그래밍 기초 - 2강. 컴퓨터의 구성 (0) | 2023.04.06 |
방송대 파이썬 프로그래밍 기초 - 1강. 컴퓨터의 이해 (0) | 2023.04.01 |