본문 바로가기
프로그래밍언어/python

[파이썬]sep, end, stdout, stderr, ljust, rjust, zfill 사용방법

by 연어바케트 2021. 1. 18.
반응형
sep과 end
print("python", "java", sep =" vs ")  #python vs java
print("python", "java", "javascript",sep =",", end ="?")  
print("python")

 

sep는 separation으로 print 문 사이사이에 설정해놓은 값을 넣게 된다. 

첫 번재 문장에 sep ="vs"를 설정 후 출력하면 python과 java 사이에 vs가 들어가 있는 것을 볼 수 있다. 

 

end는 print문이 출력된 마지막 부분을 어떻게 처리할지 설정한다. 

첫 번재 문장은 end가 없이 실행되어 바로 줄바꿈으로 이어지지만

두 번째 문장에서는 end ="?" 설정하니,

두 번재 문장 마지막에 ? 가 출력되지만 줄 바꿈이 일어나지 않고 

바로 세 번째 문장이 출력되는 거를 볼 수 있다. 

 

sys.stdout, sys.stderr
import sys
print("python", "java", file= sys.stdout)
print("python", "java", file= sys.stderr) #로그 기록을 남길때 사용 에러가 난 부분 쉽게 찾을수 잇음

sys.stdout은 표준출력으로 문장이 찍히고

sys.stderr는 표준에러오 문장이 출력된다. 

로그 기록을 남길때 사용하면 유용.

 

ljust(), rjust() 메소드

ljust()메소드는 문자열을 왼쪽으로 정렬 후 오른쪽으로 지정된 길이가 되도록 문자를 채워넣는다.

rjust()메소드는 문자열을 오른쪽으로 정렬 후 왼쪽으로 지정된 길이가 되도록 문자를 채워넣는다. 

 

 

문법

str.ljust( width[, fillchar ] )
str.rjust( wdth[, fillchar ] )

매개변수

 - width : 문자열의 길이 

 - fillchar : 채워넣을 문자, 기본값으로 공백

 

예시

scores ={"su":0, "e":5, "c":100 }
for sub, score in scores.items(): # key value로 나온다.
    print(sub.ljust(8), str(score).rjust(4), sep=":") 

 

zfill()메소드

문자열 앞에 "0"을 채워준다. rjust(width, "0")과 동일.

 

문법

str.zfill(width)

매개변수

  - width : 문자열의 총 길이. str의 길이가 width보다 크면 str이 그대로 출력된다. 

 

예시

for num in range(1, 6):
    print("대기번호 : " + str(num).zfill(3)) #3자리를 채우겟다 

 

k = "1234"
print(k.zfill(3))

반응형

댓글