표준입출력장치

2023. 2. 23. 11:00Python/실전 예제로 배우는 파이썬 프로그래밍

표준입출력장치

프로그램 단위 테스트할 목적으로 소량의 데이터를 키보드로 입력받아서 로직(logic)의 처리과정을 확인하는 경우에 주료 이용됩니다.

키보드로 입력한 모든 값은 문자열로 처리되며, 만약 숫자를 입력할 경우에는 숫자형으로 변경해야 합니다.

 

표준입력장치 예시

# (1) 문자형 숫자 입력
num = input("숫자 입력 : ")
print('num type : ', type(num) ) # <class 'str'>
print('num = ', num)
print('num = ', num*2)

숫자 입력 : >? 100
num type : <class 'str'>
num = 100
num = 100100

# (2) 문자형 숫자를 정수형으로 변환
num1 = int( input("숫자 입력 : ") # str -> int(형변환)
print('num = ', num*2)

숫자 입력 : >? 100
num1 = 200

# (3) 문자형 숫자를 실수형으로 변환
num2 = float(input("숫자 입력 : ") # str -> float(형변환)
result = num1 + num2 # 실수 = 정수 + 실수
print('result = ', result)

숫자 입력 : >? 200
result = 300.0

(1) 문자형 숫자 입력

숫자 100을 키보드로 입력하여 num 변수에 할당한 후 자료형을 출력하면 <class 'str'>라고 출력됩니다.

 

(2) 문자형 숫자를 정수형으로 변환

숫자 100을 키보드로 입력받아서 정수형(int)을 변환 후 num1 변수에 할당됩니다.

 

(3) 문자형 숫자를 실수형으로 변환

숫자 200을 키보드로 입력받아서 실수형(float)으로 변환 후 num2 변수에 할당됩니다.

 

표준출력장치

표준출력장치로 대표되는 모니터는 통합개발도구(Pycharm)에서는 콘솔(Console)로 불려집니다. 

print 함수의 도움말을 확인하기 위해서 프롬프트(>>>) 다음에 help(print) 문장을 입력하고, 엔터키를 누르면 print 함수의 도움말을 확인할 수 있습니다.

 

표준출력장치 예시

# (1) Value 인수
print("value =", 10 + 20 + 30 + 40 + 50

value = 150

# (2) sep 인수 : 값과 값을 특수문자로 구분
print("010", "1234", "5678", sep="-")

# (3) end 인수
print("value=", 10, end = ", ")
print("value=", 20)

value= 10, value= 20

(1) value 인수

print 함수에서 값(values) 속성은 콤마(,)에 의해서 구분됩니다.

 

(2) sep 인수: 값과 값을 특수문자로 구분

sep 인수는 임의 특수문자로 값들을 구분하는 역할을 합니다.

 

(3) end 인수

print는 기본적으로 값을 출력한 후 줄 바꿈을 수행합니다. end="구분자" 형식으로 인수를 사용하면 다음에 출력되는 내용이 현재 출력되는 내용과 구분자에 의해서 같은 줄에 구분되어 출력됩니다.

 

format과 양식문자

format() 함수는 값(value)을 지정한 형식(format)으로 반환해 주는 함수입니다. 주로 수학 또는 과학 기술 관련 상수, 화폐단위 등을 출력하는 경우 print() 함수 안에서 이용됩니다.

 

양식문자 기호

양식문자 출력 형식
%d 10진수 정수
%o 8진수 정수
%x 16진수 정의
%f 실수(%f전체자릿수.소수점자릿)
%s 문자열
%c 단일 문자열

format과 양식문자 예시

# (4) format() 함수 인수 : format(value, "format")
print("원주율 =", format(3.14159, "8.3f"))
print("금액 =", format(10000, "10d"))
print("금액 =", format(125000, "3,d"))

원주율 = 3.142
금액 = 10000
금액 = 125,000

# (5) 양식문자 인수 : print( "%양식문자" %(값))
name = "홍길동"
age = 35
price = 125.456
print("이름 : %s, 나이 : %d, data = %.2f" %(name, age, price))

이름 : 홍길동, 나이 :35, data = 125.46

(4) format() 함수 인수

원주율을 출력하기 위해서 format(3.14159, "8.3f") 형식으로 적용하면 원주율을 전체 8개 자릿수를 기준으로 소수점 이하 셋째 자리까지 표시됩니다.

 

(5) 양식문자 인수

name은 % s 양식문자, age는 % d 양식문자, price는 % f 양식문자를 이용하여 출력하는 예문입니다. %. 2f는 실수형 자료를 대상으로 소수점 2자리까지 표기하는 양식입니다.

 

외부상수 출력

'print("{}". format(값)' 형식으로 print() 함수 안에서 {} 기호를 이용해서 외부 값을 순서대로 받아서 출력합니다. '{n}' 형식으로 기호 안에 순번을 입력하여 외부 값을 순서대로 받을 수 있고, 같은 순서를 여러 번 쓸 수 있어 SQL문을 작성할 경우 유용합니다.

 

외부상수 출력 예시

# (6) 외부 상수 인수
print("이름 : {}, 나이 : {}, data={}".format(name, age, prices))
print("이름 : {1}, 나이 : {0}, data={2}".format(age, name, price))

이름 : 홍길동, 나이 : 35, data = 125.46
이름 : 홍길동, 나이 : 35, data = 125.456

# (7) format 축약형(SQL문 작성)
uid = input("id input : ")
query = f"select * from member where uid = {uid}"
print(query) # member 테이블에서 uid가 hong인 레코드 검색

id input : >? hong
select * from member where u id = hong

(6) 외부 상수 인수

format()의 인수로 지정한 name, age, price의 값을 {} 순서대로 받아서 출력합니다. {} 안에서 순번을 지정하여 값을 받을 수 있습니다.

 

(7) format 축약형(SQL문 작성)

'format(값)'을 '{값}' 형식으로 직접 {} 기호 안에 값을 표기하고, 따옴표 왼쪽에 f를 표시하는 format 함수의 축약형입니다. 이러한 형식은 DB의 SQL문 작성 시 유용합니다.

'Python > 실전 예제로 배우는 파이썬 프로그래밍' 카테고리의 다른 글

조건문  (0) 2023.02.26
파이썬 기본 도구 익히기 연습문제  (0) 2023.02.25
문자열(String)  (0) 2023.02.24
연산자(Operator)  (0) 2023.02.22
변수와 자료형  (0) 2023.02.21