표준 입출력
input()
프로그램을 실행했을 때 User로부터 어떤 값을 입력받는 용도로 사용
User가 값을 입력하고 [Enter] 버튼을 누르면 이 값은 항상 문자열 형태로 변수에 저장된다.
변수형을 바꾸고 싶다면 형변환을 하면 된다.
temp = int(input("오늘 기온은 몇 도인가요?"))
https://thebook.io/080357/0272/
코딩 자율학습 나도코딩의 파이썬 입문: 8.2 표준 출력 시 유용한 기능
더북(TheBook): (주)도서출판 길벗에서 제공하는 IT 도서 열람 서비스입니다.
thebook.io
sep
- ','
- '+'
print() 함수 정의에서 sep 매개변수의 기본값은 공백(" ")이었다.
근데 기본값 대신 다른 값을 넣어 print() 함수를 실행하면 해당 값을 구분 기호로 사용한다.
print("파이썬", "자바)
print("파이썬", "자바", sep=",")
print("파이썬", "자바", sep=" vs ")
end
print("파이썬", "자바", sep=", ", end-"? ")
print("무엇이 더 재미있을까요?")
file
출력 위치 지정하기
import sys
# sys 모듈을 가져와서 사용하겠다.
print("파이썬", "자바", file=sys.stdout)
# print()문의 실행 결과를 현재 표춘 출력인 VSCode의 터미널에 출력하라.
print("파이썬", "자바", file=sys.stderr)
# 오류가 발생했을 때 터미널에 오류 메시지를 띄우라는 뜻
stdout : 표준 출력 (Standard Output)
stderr : 표준 오류 (Standard Error)
※ 로그(log)를 남긴다
프로그램의 실행 과정에서 몇 시에 어떤 작업을 어떤 방식으로 수행하고 있으며
실행결과가 어떠한지 등의 정보를 기록한다.
이를 로그를 남긴다고 한다.
※ 프로그램이 의도치 않게 작동했을 때 오류 로그를 확인해서 빠르게 상황을 파악하고 그에 맞는 조치를 취할 수 있다. 다만, 두 값은 어느 정도 규모가 있는 Project를 진행할 때 필요한 기능이고, 이는 심화 내용이므로 입문 단계에서는 '이런 기능이 있구나." 정도만 알고 넘어가도 OK |
터미널 대신 파일에 출력하는 방법도 있다.
이 때는 print() 문으로 출력하려는 내용이 지정한 파일에 표시되고, 터미널에서는 출력 내용을 확인할 수 없다.
ljust(), rjust()
for문에 각각 subejct와 score라는 이름으로 key와 value를 대입할 두 변수를 지정하고
반복 대상을 scores.items()로 작성하면 score 딕셔너리의 key와 value가 차례로 subject와 score 변수에 대입된다.
* l = left, r = reft
score = {"수학": 0, "영어": 50, "코딩": 100}
for subject, score in scores.items():
print(subejct, score)
실행 결과 |
수학 0 영어 50 코딩 100 |
이 때 과목명과 점수 사이 간격을 조금 더 벌리고 점수는 오른쪽에 정렬하기 위해 ljust() 함수와 rjust() 함수 사용
score = {"수학": 0, "영어": 50, "코딩": 100}
for subject, score in scores.items():
print(subejct.ljust(8), str(score).rjust(4), sep=":")
실행 결과 |
수학 : 0 영어 : 50 코딩 : 100 |
subject.ljust(8)
과목명이 담긴 subject 변수에 ljust(8)로 접근해 출력
전달값 '8'에 의해 공간을 총 8칸 확보.
ljust() 함수는 문자열을 왼쪽(left) 정렬하므로 과목명을 왼쪽 정렬로 출력
str(score).rjust(4)
점수는 숫자이므로 score 변수에 담긴 값 = 정수형
ljust(), rjust() 함수는 문자열만 정렬하므로 문자열로 바꾸기 위해 str()로 감싼다.
그리고 str()로 감싼 score 변수(문자열이 되~)에 rjust(4)로 접근해 출력
전달값 '4'에 의해 공간을 총 4칸 확보.
rjust() 함수는 문자열을 오른쪽(right) 정렬하므로 과목명을 오른쪽 정렬로 출력
※ ljust(), rjust() 모두 값이 차지 않은 나머지 공간은 빈칸으로 출력
zfill()
숫자를 '1' -> '001'로 출력하기 위해서는 zfill() 함수를 사용한다.
* 'z' = zero
for num in range(1, 21):
print("대기번호 : "+ str(num).zfill(3))
'Programming Language > Python' 카테고리의 다른 글
[Python] Argument vs Parameter (0) | 2024.07.19 |
---|---|
[Python] 나도코딩 파이썬 입문 - 문풀 Part6 (0) | 2024.07.18 |
[Python] 기본 문법(7): 제어문 - 조건문(if), 반복문(for, while), range() (0) | 2024.07.18 |
[Python] 기본 문법(6): random 모듈 - shuffle(), sample() (0) | 2024.07.18 |
[Python] 기본 문법(5): 자료구조 변환하기 (0) | 2024.07.18 |