파이썬 강좌(초급)/7.입출력

7.입출력 - 1)개요

파기차차 2024. 3. 31. 09:42
728x90
반응형
SMALL

 

7.1.입출력이 뭐에요?

파이썬에서 입력은 프로그램에 데이터를 넣는(주는) 방식을 말하며, 일반적으로 파이썬의 input()함수를 사용하여 프로그램에 데이터를 입력합니다. 이를 표준입력이라 부릅니다.

 

파이썬에서 출력은 프로그램이 데이터를 출력하는 곳(보여주는 곳)이 어디인지에 따라 달라지는데, 일반적으로 화면에 출력하고(보여주고) 이를 표준출력이라 부릅니다.

 

파이썬에서 표준 입력은 input() 함수를 사용하여 데이터를 입력하고, 표준 출력은 print() 함수를 사용하여 출력(화면에 보여줌)합니다.

 

# 표준 입력을 받기
user_input = input("입력하세요: ")

# 입력된 내용을 출력하기
print("입력된 내용:", user_input)

 

 

print()문의 구분자를 “,”로 분리하려면 아래와 같이 합니다.

(sep=","를 하지 않으면 기본적으로 스페이스로 구분됩니다.)

print("Python", "Java", sep=",")

 

결과

Python,Java

 

 

 

print()문의 구분자를 “,”로 분리하고, 출력 끝을 “?”로 추가하려면 아래와 같이 코딩합니다.

(end="?"를 하지 않으면 기본적으로 엔터(다음칸)로 구분됩니다.)

print("Python", "Java", sep=",", end="?")
print("안녕하세요?")

 

결과

Python,Java?안녕하세요?

 

 

아래와 같이 코딩하면 표준출력을 화면으로 하고, 표준 에러도 화면으로 한다는 의미입니다.(기본설정이므로 아래 설정을 해주지 않아도 결과는 동일합니다.)

표준출력 : sys.stdout (기본 출력 시 화면으로 출력해라)

표준에러 : sys.stderr (에러 발생 시 화면으로 출력해라)

import sys
print("Python", "Java", file=sys.stdout)
print("Python", "Java", file=sys.stderr)

 결과 : 아래 2개 모두 화면으로 출력됨

Python Java
Python Java

 

 

아래 코드 실행시 하기 결과와 같이 나타납니다.

scores = {"수학":0, "영어":50, "코딩":100}
for subject, score in scores.items():
	print(subject, score)

결과

수학 0

영어 50

코딩 100

 

 

 

위의 결과에서 과목을 8자리수로 왼쪽 정렬을 하려면 아래와 같이 코드를 수정합니다.

scores = {"수학":0, "영어":50, "코딩":100}
for subject, score in scores.items():
	print(subject.ljust(8), score)

 

수학_______0       <--- 숫자 0을 기준으로 왼쪽 칸을 세면 8개가 아닌 9개로 나오는데, 이는 print()문 자체가 출력시 스페이스(빈칸)로 구분하여 출력하므로 9칸이 되며, 여기서 print()문의 1칸를 빼야하므로 9-1 = 8칸으로 맞게 나옵니다.

영어______ 50

코딩______ 100

 

 

위의 결과에서 과목과 점수를 ":"로 구분하고, 점수를 4칸으로하고, 오른쪽 정렬하려면 아래와 같이 코딩합니다.

scores = {"수학":0, "영어":50, "코딩":100}
for subject, score in scores.items():
	print(subject.ljust(8), str(score).rjust(4),sep=":")

score가 int형이므로 str형으로 바꿔주고 rjust(4)를 이용하여 4자리의 오른쪽 정렬을 해주었습니다. 그리고 sep=":"를 이용하여 구분자를 ":"으로 바꿔 주었습니다.

 

결과

수학      :   0

영어      :  50

코딩      : 100

 

 

아래 코드를 실행하면 하단의 결과와 같이 나옵니다.

for num in range(1,5):
	print("대기번호 : " + str(num))

 

대기번호 : 1
대기번호 : 2
대기번호 : 3
대기번호 : 4

 

 

대기번호의 숫자를 3자리 형태로 만들고, 앞에 '0'을 붙여주고 싶다면 아래와 같이 코딩 합니다.

for num in range(1,5):
	print("대기번호 : " + str(num).zfill(3))

마찬가지로 숫자형인 num을 str()로 바꿔준 후 zfill(3)함수를 사용하여 대기번호의 자릿수를 3자리로 하고, 앞에 '0'을 붙여주었습니다.

 

결과

대기번호 : 001
대기번호 : 002
대기번호 : 003
대기번호 : 004

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형
LIST

'파이썬 강좌(초급) > 7.입출력' 카테고리의 다른 글

7.입출력 - 3) 파일입출력  (2) 2024.03.31
7.입출력 - 2)다양한 출력포멧  (2) 2024.03.31