어떤 언어든지, 천리길도 "Hello World" 부터.
언어를 공부하려면 제일 먼저 문자열 입출력부터 배워야 한다.
파이썬3를 기준으로 문자열 입출력 방법을 간단히 소개해보고자 한다.
문자열 출력하기
파이썬은 직관적이다.
다음과 같이 print() 함수를 사용하면, 문자열을 출력할 수 있다.
위와 같이 직접 함수 안에 문자열(쌍따옴표로 묶인 부분)을 전달할 수도 있지만,
아래와 같이 문자열을 변수에 담아 전달할 수도 있다.
위 동작을 풀어서 설명하면 다음과 같다.
myString 이라는 변수를 만들고, 이 변수에 "Hello World #2" 라는 문자열을 담아
문자열 타입의 변수로 만들었다.
그리고 이 문자열 변수를 print() 함수로 전달하여 화면에 출력했다.
지금까지 어려울 것은 하나도 없다.
그럼 이제 문자열을 입력받는 방법에 대해 알아보자.
문자열 입력받기
입력도 출력만큼이나 쉽다.
input() 함수를 사용하면, 유저로부터 문자열을 입력받기 위한 입력창이 뜬다.
이 입력창에 쓴 문자열이 myValue 에 들어가게 된다.
숫자를 입력받았지만, 사실 문자열 타입(str)의 "20" 이 myValue에 저장되어 있다.
input() 함수는 파라미터로 다음과 같이 안내용 문장을 입력할 수 있다.
별거 아닌 것 같지만, 이런 점들이 모여 프로그램의 디테일이 된다.
입력받은 데이터 출력하기
입력받은 내용을 다음 출력에서 사용하려면 어떻게 해야 할까?
사용자로부터 이름을 받아, 인사를 건네는 프로그램을 만들어보자.
일단 입력은 간단하다.
name = input("이름을 입력하세요 : ")
위와 같이 코드를 작성하면, 사용자로부터 이름을 받아올 수 있을 것이다.
이제 이 이름을 출력하면서 인사를 건네기만 하면 된다.
만약 사용자의 이름이 "김철수철수" 라면,
"김철수철수님, 안녕하세요." 라는 문자열이 출력되어야 한다.
문자열이 조합되어야 하는 것이다.
방법1. 그냥 출력하기
이를 위한 가장 간단한 방법은, 그냥 print() 함수의 파라미터를 넣을때
콤마로 여러 문자열을 전달하는 방법이다.
방법 2. + 연산자로 새 문자열을 만들어서 출력하기
두번째로는, + 연산자를 사용해서
두 문자열을 이어 붙인 새로운 문자열을 만들고, 그것을 출력하는 것이다.
newStr = name + "님, 안녕하세요."
print(newStr)
위와 같이 코드를 작성하면, "김철수철수님, 안녕하세요." 라는 새로운 문자열이
newStr 변수에 저장된다.
굳이 별도 변수를 만들지 않아도, newStr 은 name + "님, 안녕하세요." 와 동일하므로
print(newStr) 과 print(name + "님, 안녕하세요.") 는 동일한 결과를 낸다.
방법3. f-string 문자열 포맷팅 사용하기
문자열 포맷팅이란,
내가 원하는 변수를 가지고 내가 원하는 형태로 문자열을 만드는 것을 뜻한다.
파이썬은 여러가지 문자열 포맷팅 방법을 가지고 있지만,
오늘은 그 중 최근에 가장 선호되는 f-string 포맷팅을 사용해서 위 문제를 해결해보자.
포맷팅이라는 단어가 어렵게 느껴지지만,
코드를 보면 오히려 위 방법들보다 더 간단하고 직관적이다.
이게 끝이다.
문자열의 쌍따옴표 앞에 f가 붙으면
"이것은 특별한 문자열입니다. {} 안에 변수이름을 넣으면 그 값이 문자열의 일부가 되지요."
라는 뜻이다.
더 자세한 내용은
"문자열 포맷팅"이라는 키워드와 "f-string" 이라는 키워드만 있으면
구글링으로 얼마든지 찾을 수 있다.
이제 프로그래밍 공부를 위한 기본적인 준비가 완료되었다.