Sparta Coding Club/Today I Learned [TIL]

[TIL] #DAY - 007 - 진짜 파이썬 시작(?) (내일배움캠프AI 3기, 파이썬 실시간 강의 2일차, 계산기 과제)

양한마리 2022. 9. 6. 22:00
728x90



 

오늘도 변함없이 코딩 시작!

 


오늘 대충 시간표

시작 시간 ~ 종료 시간 교과명
09:00 ~ 13:00 [실시간] 파이썬 문법
14:00 ~ 18:00 [과제] 계산기 만들기
19:00 ~ 21:00 [실습] 실무적용 알고리즘 실습

 

Python 강의 2일차

  1. Python 언어의 이해
  2. Python 기초
    • ↑ 1일차 수업 끝
    • ↓ 2일차 수업 시작
  3. Python 활용
    • 자료형 활용하기
      • 사칙연산 
        • +(더하기), -(빼기), *(곱하기), **(제곱), /(나누기), //(나머지 없는 나누기), %(나머지)
      • string  # str()  
        • 문자열에서도 + 와 * 연산 기호를 지원
        • fstring 을 활용해 문자열과 변수를 함께 사용 가능
      • list  # [a, b, c]
        • 0부터 시작해 순서대로 index 번호를 가지며, indexing과 slicing 기능을 활용해 원하는 값을 가져올 수 있습니다.
        • 값을 원하는대로 추가, 수정, 삭제 가능
        • 숫자나 문자 이외에도 다양한 자료형을 사용 가능
        • len() 함수를 사용해 list의 길이를 구할수 있습니다.
      • tuple  # (a, b, c)
        • indexing 기능 활용 가능
        • 요소를 수정하거나 삭제 불가능, 추가만 가능
        • list 와 마찬가지로 다양한 자료형으로 사용 가능
        • len() 함수를 사용해 tuple 의 길이를 구할수 있습니다.
      • set  # {a, b, c} 
        • 자료형은 중복 된 값을 포함 하지 않는다. indexing, slicing 기능을 미지원
        • len() 함수를 사용해 tuple 의 길이를 구할수 있습니다.
      • dictionary
        • 해당 자료형은 key : value 로 구성되며, key 를 사용해 value 를 가져올 수 있습니다.
        • 자유롭게 값을 추가, 수정, 삭제 가능
    • 자료형 변환
      • python에서는 특정 값의 자료형을 조건이 맞을 경우 자유롭게 변환할 수 있습니다.
        • string -> int
        • list -> tuple -> set
        • any -> string
        • 이외에도 다양한 자료형들을 변환 가능
    • 함수
      • def 함수명(): 과 같은 형태로 선언
    • 다른 파일에 있는 코드 import해서 사용하기
      • 어디서(from) 어떤(import) 것을 가져와서 사용할지 지정 할때 사용.
    • 값 비교하기
      • 비교 연산자를 사용하여 결과가 True 인지 False 인지 판단하여 사용
      • Boolean 으로 표현
    • 조건문
      • 특정 비교 결과 혹은 값이 True 혹은 False일 경우 실행 될 로직을 정의합니다.
      • and, or 을 사용해 2개 이상의 조건을 복합적으로 사용
      • 비어있는 str, list 등은 분기문에서  False로 판단
      • 특정 값이  True 인지 False 인지는 Bool() 함수를 사용하여 확인
    • 반복문
      • while, for 문을 사용해 반복문을 사용

자세한 강의 내용은 따로 올릴 예정!


계산기 만들기

문제 )

계산기 만들어보기

사용자의 입력을 받아 계산기 기능을 구현해주세요

요구조건

  • main.py 파일에서 사용자의 입력을 받아 기능을 처리해주세요
  • 사용자가 입력한 숫자와 연산기호(+, -, *, /)에 따른 연산 결과를 출력해주세요
  • 더하기, 곱하기, 빼기, 나누기 기능을 하는 함수는 main.py가 아닌 다른 파일에서 작성해주세요
  • 사용자의 입력을 받는 방식은 자유롭게 작성하셔도 무관합니다. 다만, 입력받기 전 사용자가 어떤 방식으로 입력해야 하는지 가이드 출력해주세요
# case 1
num1 = int(input())
num2 = int(input())
operator = input()

# case 2
num1, num2, operator = input().split(" ")

# etc....

 

코드 풀이 )

main.py

# main.py

from calculator import *

print("숫자를 입력 합니다.")
a = int(input())
print("+, -, *, / 중 원하는 사칙연산을 입력 합니다.")
cal = str(input())
print("숫자를 입력 합니다.")
b = int(input())

if cal == "+" :
    c = plus(a, b)
elif cal == "-" :
    c = minus(a, b)
elif cal == "*" :
    c = multiplied(a, b)
elif cal == "/" :
    c = divided(a, b)

print(f"{a} {cal} {b} = {c}")

 

calculator.py

# calculator.py

def plus(a, b):
    return a + b

def minus(a, b):
    return a - b

def multiplied(a, b):
    return a * b

def divided(a, b):
    return a / b

 

해설 )

  1. calculator.py 안에 각 사칙연산에 필요한 함수를 만들었다.
  2. main.py 에서 from ~ import 를 이용하여 함수들을 불러왔다.
  3. print 와 input 을 통해서 숫자와 연산 기호를 받아왔다.
  4. 각 받은 값들로 조건문을 통해서 불러온 함수들에 접목시계 결과값이 나오는 계산기를 만들었다.
  5. 마지막으로 fstring 을 통해서 print 로 완성된 값을 출력하였다.

실행 예시 ) 

 

첫 과제를 TIL 적어봤는데 내용이 부족한거같다 다음 과제는 좀 더 잘만들어봐야곘다.

728x90
반응형