Java에서는 System.out.println(), c언어에서는 printf(), javascirpt에서는 console.log() 모든 프로그래밍언어에는 자신이 입력하는 데이터를 출력하는 방법이 있습니다. Python에서는 특히 다양한 사용법이있는데 이를 정리 해보고자 합니다.
1. 간단한 출력문
>>> print("My name is oh one taek")
My name is oh one taek
2. 2개 이상의 문자열을 합쳐서 출력
>>> print("My name"+" is "+"oh one taek")
My name is oh one taek
파이썬에서 + 는 문자열을 합칠때 사용합니다. 그러나 문자열과 숫자를 이러한 방법으로 결합하면 TypeError: can only concatenate str (not "int") to str 이러한 오류가 발생합니다.
그래서 이를 해결하기 위해서는 다른 방법을 사용해야합니다.
3. 문자열과 숫자를 함께 출력하기
3 - 1. , 사용하기
>>> print("나는 공을",5,"개 가지고 있다.")
나는 공을 5 개 가지고 있다.
, 기호를 사용하여 문자열과 숫자형을 같이 사용하는 방법도 있습니다.. 하지만 , 를 사용하게 되면 자동으로 띄어쓰기가 되어서 이럴때는 다른 방법을 사용해야 합니다..
3 - 2. str()함수를 사용하여 숫자를 문자열로 바꿔주기
>>> print("나는 공을 "+str(5)+"개 가지고 있다.")
나는 공을 5개 가지고 있다.
이런 식으로 str()함수를 하용하여 숫자형 5를 문자열로 바꾸어 주어야합니다. 그러나 출력 길이가 길어지거나 변수가 많아지면 복잡해지게 됩니다.
3 - 3. format함수를 사용하기
>>> print("나는 공을 {}개 가지고 있다.".format(5))
나는 공을 5개 가지고 있다.
{}에 format함수에 입력한 값이 들어가게 됩니다.
>>> a = 5
>>> print("나는 공을 {}개 가지고 있다.".format(a))
나는 공을 5개 가지고 있다.
format함수의 입력값으로 변수를 넣는 것도 가능합니다.
4. 변수가 2개 이상일 경우(f - string 사용)
4 - 1. format 함수의 입력 값으로 다수의 값 입력
>>> a = 3
>>> b = 4
>>> print("나는 야구공을 {}개 농구공을 {}개 가지고 있다.".format(a,b))
나는 야구공을 3개 농구공을 4개 가지고 있다.
변수를 여러개 사용할 경우 foramt 함수의 입력 값으로 여러개 넣어 주면 됩니다.
4 - 2. f - string 사용
>>> a = 3
>>> b = 4
>>> print(f"나는 야구공을 {a}개 농구공을 {b}개 가지고 있다.")
나는 야구공을 3개 농구공을 4개 가지고 있다.
문자열의 맨 앞에 f 를 쓰고 {} 안에 해당하는 변수를 넣어 주는 것으로 제가 생각 했을 때는 이 방법을 사용하는 것이 가능 깔끔한 것 같습니다.
5. 문자열 포맷으로 출력하기
5 - 1. 기본적인 방식
>>> print("나는 공을 %d개 가지고 있다." % 5)
나는 공을 5개 가지고 있다.
오래된 방식으로 C언어에서 출력하는 방법과 유사합니다. %위에 붙은 영어 소문자에 따라 표현할 수 있는 자요형이 결정됩니다. 타입의 종류는 아래와 같습니다.
%d : 정수
%f : 실수
%s : 문자열
%o : 8진수
%x : 16진수
%% : 문자 % 표현
5 - 2. 포맷을 이용한 소숫점 갯수 조절
>>> print("%d 나누기 %d는 %f 이다." % (5,3,5/3))
5 나누기 3는 1.666667 이다.
>>> print("%d 나누기 %d는 %0.3f 이다." % (5,3,5/3))
5 나누기 3는 1.667 이다.
출력할 때 출력 포맷을 정하는 방식으로 (소수점 앞자리 숫자).(소수점 뒷자리숫자)f 의 형태로 원하는 포맷 값으로 출력할 수 있습니다.
5 - 3. format 함수를 이용한 포맷팅
>>> print("{:d} 나누기 {:d}는 {:.3f}입니다.".format(5,3,5/3))
5 나누기 3는 1.667입니다.
{}안에 :d, :f 를 넣어서 위에서 했던 "4.변수가 2개일 경우"에서 출력 값를 원하는 포맷 값으로 출력할 수 있습니다.
5 - 4. f - string 출력포맷 설정
>>> print(f"{5} 나누기 {3} 은 {5/3:.3f} 이다.")
5 나누기 3 은 1.667 이다.
{(값 or 변수) : (소수점 앞자리) . (소수점 뒷자리) f } 이런 형식으로 출력 값을 포맷 할 수 도 있습니다.
6. print() sep 옵션
>>> print("도","레","미",sep="!")
도!레!미
print 문의 출력 문들 사이에 해당하는 내용을 넣을 수 있습니다. 기본 값으로는 공백이 들어가 있으며 sep 옵션을 통해서 원하는 문자를 입력할 수 있습니다.
7. print() end 옵션
>>> print("도","레","미",end="")
>>> print("솔","라","시")
도 레 미 솔 라 시
print 문의 완료한 뒤의 내용을 end옵션을 통해서 수정할 수 있습니다. 기본 값으로는 개행(\n)이며, end=" "을 아용하면 개행없이 print()문을 사용할 수 있습니다.
'프로그래밍언어 > Python' 카테고리의 다른 글
[Python] 파이썬 리스트 정렬하기 (0) | 2022.09.14 |
---|---|
[Python] 파이썬 리스트 뒤집기 (0) | 2022.09.12 |
[Python] 문자열에서 문자 찾기(find()함수, index()함수,for문을 사용) (0) | 2022.09.08 |