본문 바로가기
DEV/파이썬 이론

파이썬 코딩 :: 파이썬 문법, 계산기 만들기_TIL#07

by 올커 2022. 9. 6.

■ JITHub 개발일지(TIL : Today I Learned) 7일차


 

□  TIL ::

     파이썬 알고리즘(Python Algorithm), 기초 문법, 백준 실습

1. 파이썬 자료형

  - 파이썬은 기본적으로 사칙연산을 지원

  - 숫자 자료형의 나눗셈 계산 (/ - 나눗셈, // - 몫 반환, % - 나머지 반환)을 잘 구분하여 사용할 것

  - 파이썬에서 num = num + 1은 num += 1 과 같이 자주 표현한다

  - 문자열도 사칙연산이 가능

  - 문자열 인덱싱을 통해 요소 각각을 나누어 사용가능

# 아래 세가지 방법 모두 동일한 결과물이 출력
print("n1 : %s, n2 : %s, sum : %s" % (n1, n2, n1+n2)) # old Style
print("n1 : {}, n2 : {}, sum : {}".format(n1, n2, n1+n2)) # ~ python < 3.6
print(f"n1 : {n1}, n2 : {n2}, sum : {n1+n2}") # ~ python >= 3.6

  - 문자 자료형에는 f-string 정말 많이 사용되니 잘 숙지할 필요

    런타임에서 코드가 동작하는 시간은 비교적 느린 편

  - 인덱싱, 리스트 슬라이싱, 추가(.append()), 삭제(.remove()), 수정, pop

  - 딕셔너리에서 없는 Key를 호출하면 에러가 발생하지만,

    아래와 같이 ".get(호출하는 Key, 없을때 출력값)"을 사용할 수 있다, 

print(products["drink"])
>>> KeyError 발생

print(products.get("drink", "없음"))
>>> "없음"

  - 딕셔너리 값 추가, 변경 삭제는 아래와 같이 사용가능하다.

products = {
        "bread" : 1000,
        "milk" : 3000,
        "egg" : 6000,
}

products["bread"] = 1500    # bread key의 value를 1500으로 변경
products["drink"] = 2000    # drink key를 가진 value 추가

del product["egg"]          # drink의 egg key 삭제

  - set자료형은 중복된 값을 포함하지 않고 indexing과 slicing기능을 지원하지 않는다.

2. 파이썬 자료형 변환

- 자료형을 변경(int ↔ str, list ↔ tuple ↔ set, any ↔ str 등)할 때에는 조건이 맞아야 한다.

    (ex. "3" 은 int로 변경이 가능하나, "한글" 은 int로 변경이 불가능)

  - list에 중복값이 있을 경우 set으로 형변환하면 중복값이 모두 사라지게 된다.

3. 함수

  - 함수의 선언과 결과 리턴

def 함수명():
	함수 내용
	return 결과

4. 다른 파일에 있는 코드 import

  - 다양한 방식으로 from 과 import를 사용할 수 있다.

  - 다른 파일을 import하여 선언된 코드(함수, 변수)들을 활용할 수 있다.

from a import a_funtion
from a import *
import a

from folder import b
from folder.b import *

from folder.c import c_funtion1, c_funtion2

5. 값 비교하기

  - 포함관계 확인 : in

4 in [1, 2, 3]    # False
1 in [1, 2, 3]    # True

6. 조건문

   - 비어있는 string, list, 숫자 0  →  False로 판단

empty_string = ""
empty_list = []

if not empty_string:
	print("비어있는 문자열")

if not empty_list:
	print("비어있는 리스트")

>>> 비어있는 문자열
>>> 비어있는 리스트

 

7. 과제. 계산기 만들기

 - 사용자의 입력을 받아 계산기 기능을 구현하기

   ▼ 요구조건

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

def cal(a, b, x):
    if x == "0":
        print(a+b)
    elif x == "1":
        print(a-b)
    elif x == "2":
        print(a*b)
    elif x == "3":
        print(a/b)
# main.py
import calculator

print("계산기 : 두 숫자와 연산자를 입력하세요")
print("※ 연산자 : 덧셈(0), 뺄셈(1), 곱셈(2), 나눗셈(3)")

num1 = int(input("첫번째 수를 입력하세요: "))
num2 = int(input("두번째 수를 입력하세요: "))
operator = input("연산자를 입력하세요: ")

calculator.cal(num1, num2, operator)

■ TIT :: Today I thought

         - 새로 배우는 것들이 많아서 그런지, 많이 접하지 않게 되는 코드들은 쉽게 잊혀진다.

           아는 것 같더라도 다시 보게되는 코드들, 함수나 문법들은 꼼꼼히 다시 생각해볼 것

         - 코드에 주석 꼼곰하게 복기하면서 넣어볼 것

         - 현재 공부하고 있는 상태, 위치에 조급함을 내려놓고 정확하게 알고 많이 생각하는 것에 중요도를 둘 것

 

반응형

댓글