본문 바로가기
우당탕탕 학교생활/_방송통신대학교

방송통신대학교 프라임칼리지 파이썬(Python) 세번째 시간 리뷰

by J-2n 2020. 8. 2.

프라임칼리지 파이썬 과정 세번째 강의이다.

다행히 오늘날짜 기준 (8.2) 4강까지만 들으면 본래 진도를 따라갈 수 있게된다. 오늘 꼭 다 들을테다..

한번 밀리면 역시 산더미처럼 쌓이게 되고 내자신을 원망하게 된다. 무한 루트 반복 흑흑..

더불어 확인해보니 과제파일이 등록되었다 과제물 제출 기한은 2020. 8. 21.(금) 14시까지 서둘러 밀린 강의 보고 과제물 확인을 해봐야겠다.

왜 방통대는 아직까지도 한글 파일이 많은지 word를 주로 사용하는 나로써는 너무 불편하다


원의 넓이 계산

- 반지름이 20인 원의 넓이와 둘레 출력

(알고리즘 넓이 = , 둘레 = )


# 넓이 출력

print("넓이는", 20 * 20 * 3.141592, "입니다.")

# 둘레 출력

print("둘레는", 2 * 20 * 3.141592,"입니다.")


- 반지름이 25로 변한다면 번거롭게 20 -> 25로 바꿔줘야한다.

  수정 작업을 쉽게 하기 위해서 반지름 값을 할당한다.


#변수 선언   -> 메모리에 저장한다.

radius = 20    


# 넓이 출력

print("넓이는", radius * radius * 3.141592, "입니다."

# 둘레 출력

print("둘레는", 2 * radius * 3.141592,"입니다.")


변수

컴퓨터 메모리에 저장된 값을 참조하는 이름이다.


사용자 입력

프로그램을 실행할 때마다 사용자에게 입력받는다.

- input() 함수 - 문자데이터

variable = input("값을 입력하세요:")

사용자가 입력할때까지 대기한다.

입력을 하면 변수에 값이 입력된다.


- eval() 함수 - 문자형태 -> 숫자형태

variable2 = eval(variable)


식별자

- 변수의 이름, 함수의 이름, 클래스의 이름 프로그램 내부에 있는 항목이름을 뜻한다.

1. 문자, 숫자, 밑줄로만 구성한다.

2. 문자 또는 밑줄로만 시작 가능하다.

3. 키워드와 동일할 수 없다.

4. 길이 제한이 없다.


할당문과 표현식

- 할당문

: 변수에 어떠한 값을 할당하는 명령문

variable = expression


- 표현식

: 값, 변수, 연산자를 포함한 계산식


동시 할당문

- 파이썬에서만 제공된다.

ex) 다섯개의 변수에 1,2,3,4,5를 할당하고 싶으면 5개의 명령문을 한줄로 줄일 수 있다.

var1, var2 ... var5 = exp1, exp2 ...exp5


- 교환(swap)

var1, var2의 값을 교환할때 사용한다.

var1, var2 = var2, var1

로 간단하게 사용한다.


나눗셈과 지수승

- 실수 나눗셈 ( / )

>>>5 / 2

2.5

- 정수 나눗셈 (//)

>>> 5 // 2

2


- 지수승 (**)

a ** b = 

>>> 3 ** 2

9

>>> 2.3 ** 3.5

18.45216910555...


%연산자

- 나머지 또는 모듈로 연산자

: 나눗셈이 수행된 후 나머지 값을 결과로 산출 (홀수 짝수 구별가능)

>>> 7%3

1


연산자 우선순위

- 한표현식에 여러 연산자가 사용될 때 연산 순서를 결정

1. 괄호 내부의 수식이 우선

2. 지수 (**) 연산자

3. 곱셈, 실수 나눗셈, 정수 나눗셈, 나머지 연산자 (왼쪽에서 오른쪽)

4. 덧셈, 뺄셈 연산자(왼쪽에서 오른쪽)


확장 할당 연산자

+, -, *, /, //, %, ** 연산자를 =과 조합

- 변수값을 수정하여 자신에게 재할당

count = count + 1

-> count += 1


타입 변환과 반올림

- 자동적으로 컴퓨터에서 타입 변환을 한다. (정수 -> 실수)

>>> 3 * 4.5

13.5

 

- 명시하여 타입변환

>>> value = 5. 75

>>> int(value)

5


- 반올림

 round 함수 사용

>>>round(value)

6


시각 다루기

- time 모듈의 time() 함수

time.time() 함수를 쓰면 1970 - 01- 01 00:00:00 GMT 에서의 경과시간을 알려준다.

유닉스 에포크라고 하며 현재시간을 출력하려면 경과 시간을 계산해야한다.


실습

- 원의 둘레와 넓이 계산

# 사용자에게 입력받는다. (input - 문자형식) (eval - 숫자형식)

radius = eval(input("반지름값을 입력하세요 : "))


print("넓이는 ", radius * radius * 3.141592,"입니다.")

print("둘레는 ", 2 * radius * 3.141592, "입니다. ")


- 현재 시간 출력하기(내코드가 이상한지 +3시간이 되어서 나온다.. 수정예정)

import time

#유닉스 에포크에서의 경과 시간

currentTime = time.time()

totalSeconds = int(currentTime)

# 현재까지의 초

currentSeconds = totalSeconds % 60

# 분 - 소수점 이하가 생기지 않도록 함

totalMinutes = totalSeconds // 60

# 현재까지의 분

currentMinutes = totalMinutes % 60

# 전체 지난 시간

totalHours = totalMinutes // 60

currentHour = totalHours % 24

print("현재 시간은", currentHour," : ", currentMinutes, " : ", currentSeconds, "입니다.")


- 거리 계산하기

import turtle


x1, y1 = eval(input("첫번째 점에 대한 x1과 y1을 입력하세요 : "))

x2, y2 = eval(input("두번째 점에 대한 x2와 y2를 입력하세요 : "))


#두점 사이의 거리 구하기

distance = ((x2 - x1) ** 2 + (y2 - y1)**2) ** 0.5


turtle.penup()


turtle.goto(x1, y1)

turtle.pendown()

#문자를 쓴다.

turtle.write("점1")


turtle.goto(x2, y2)

turtle.write("점2")


turtle.penup()

# 두점 사이의 중앙

turtle.goto((x1 + x2) / 2, (y1 + y2) / 2)

turtle.write(distance)


turtle.done()

-----------------------------------------------------

입력값 : 

첫번째 점에 대한 x1과 y1을 입력하세요 : -50, 34
두번째 점에 대한 x2와 y2를 입력하세요 : 49, -85

결과 : 


정리하기 (출처 : 한국방송통신대학교 프라임칼리지)

1. input 함수를 사용하여 사용자로부터 입력 값을 얻고,  eval 함수를 사용하여 문자열을 숫자 값으로 변경할 수 있다.

2. 식별자(identitier)는 프로그램 내에서 각 항목들을 서로 구별하기 위해 사용되는 이름이다.

3. 식별자는 대소문자, 숫자, 밑줄(_), 별표(*)로 구성되는 문자들의 나열이며 길이 제한이 없다. 식별자는 반드시 대소문자나 밑줄로 시작해야 하며, 숫자로 시작할 수는 없다. 키워드를 식별자로 사용할 수 없다.

4. 변수는 프로그램에서 데이터를 저장하기 위해 사용된다.

5. 동호 기호(=)는 할당 연산자(assignment operator)로 사용된다.

6. 변수를 사용하기 이전에 변수는 반드시 값을 할당받아야 한다.

7. 파이썬에는 2가지 수치 데이터 타입으로 정수와 실수가 있다. 정수 타입(축약해서 int)은 모든 정수를 나타내며, 실수 타입(축약해서 float)은 소수점을 가진 숫자를 나타낸다.

8. 파이썬은 수치 연산의 수행을 위해 덧셈, 뺄셈, 곱셈, 나눗셈, 정수 나눗셈(//), 나머지(%), 지수(**)와 같은 연산자를 제공한다.

9. 파이썬 표현식에서 수치 연산자는 산술식에서와 동일한 방식으로 적용된다.


100%를 향해