1. print 사용하기
print("어떤 문자열")
print(변수명)
print 함수를 사용하면 () 안의 내용을 출력할 수 있다.
print 함수 안에 여러 변수를 , 를 이용하여 나열하여 출력할 수 있다.
2. % : 형 변환하여 출력하기
print("나는 사과를 %d개 먹었다, %s " %(15, '굿') )
포멧을 지정하기 때문에 출력 형식도 정할 수 있다.
가령, float 의 경우
ani_float = 3.141592653
print("%f" %ani_float) >> 3.141593 ..........소수점 아래 6자리 수까지 나온다.
print('%0.f' %ani_float) >> 3 ..........소수점 아래는 나오지 않는다.
print('%.3f' %ani_float) >> 3.142 ..........소수점 아래 3자리 수까지 나온다.
print('%.10f' %ani_float) >> 3.1415926530 ..........소수점 아래 10자리수까지 나온다.
문자에 자리를 할당할 수도 있다.
가령,
print("%d입니다." %ani_float) >> 3입니다. ..........(변수 길이에 딱 맞춰서 할당됨)
print("%5d입니다." %ani_float) >> 3입니다. ..........(5자리가 할당됨)
print("%5d입니다." %ani_float) >>00003입니다. ..........(5자리가 할당되며 빈 자리는 0으로 채워짐)
그러나...
%는 변수나 튜플 등 자료를 받아들일 때 불편하다.
name = ('j','c','k')
print("hi there %s" % name)
>> 출력: TypeError: not all arguments converted during string formatting
튜플을 받아오면 타입 에러가 뜬다.
Q. 왜 튜플은 str 포멧으로 컨버팅 할 수 없는가? 튜플은 불변성을 가지고 있기 때문인가?
따라서 다음과 같은 형식으로 바꿔줘야 한다.
name = ('k','l','p')
print("hi there %s" % (name,) )
>> 출력: hi there ('k', 'l', 'p')
3. {} .format () : 포멧을 지정하여 출력하기
반면 format 형식은 % 연산자와 같은 에러가 발생하지 않는다.
print('hi there {}'.format(name))
>> 출력: hi there ('k', 'l', 'p')
또한 {} 안에 숫자를 입력함으로써 변수의 순서를 마음대로 지정할 수 있다.
예) print( "{0}{1}{2}...{n}".format(index0, index1, index2, ..., indexn) )
print( 'hi there {0[0]} ,{0[1]} , {1} \n {0[2]}' .format( name, 'good!' ) )
>> 출력:
hi there k , l , good!
p
결론: format 을 이용한 출력이 더 세련됨!
여러개의 변수를 print 할 때, 변수 사이에 특정 문자 넣기 sep=
h,m = map(int,input().split(':'))
print('{}:{}'.format(h,m))
print(h, m, sep=':')
'오늘의 공부 > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 조이스틱 (0) | 2020.02.26 |
---|---|
[프로그래머스] level 1 - 체육복 (0) | 2020.02.26 |
[python] 진수 표현법 (0) | 2020.02.17 |
[code up] 1008 : [기초-출력] 출력하기08 (0) | 2020.02.16 |
[code up] 기초 100제 (0) | 2020.02.16 |