앞 포스팅에서 문자 데이터의 기본적인 개념인 문자 데이터와 숫자 데이터의 차이와 문자 데이터의 표현 등을 알아보았습니다. 데이터는 데이터 그 자체로도 의미가 있지만, 다양한 함수와 연산자를 이용해서 다른 결과값을 도출할 수 있습니다. 그럼 어떻게 데이터를 가공해서 다른 결과값을 도출할 수 있는지 알아보도록 하겠습니다.
목차
연산자 이용하기
파이썬에서는 데이터라는 날 것의 재료를 이용해서 연산자와 함수라는 다양한 향신료와 도구들을 이용해서 새로운 요리를 탄생시킬 수 있습니다. 그 다양한 향신료와 도구들 중에 하나를 ‘연산자’라고 합니다. 연산자는 우리가 쉽게 볼 수 있는 사칙연산을 떠올리면 됩니다. +, -, *, / 등 우리가 흔히 숫자 계산할 때 사용하는 것들을 파이썬 데이터 계산을 위해서도 사용할 수 있습니다. 먼저 예시로 쉽게 이해해보도록 하겠습니다.
① print(“안”+”녕”)
② print(“안녕하”-“하”)
③ print(“안녕”*2)
④ print(“안녕”*”안녕”)
⑤ print(“안녕하”/“하”)
우리가 흔히 쓰는 사칙연산을 데이터에 적용시켜서 결과값을 알아보도록 하겠습니다.
①의 경우, "안녕"이라는 결과값을 얻을 수 있었습니다.
②의 경우, "unsupported operand type(s) for - : 'str' and 'str'"이라는 오류 문구가 떴습니다. '-'연산자는 str(숫자데이터)에서만 가능하며 문자 데이터는 지원하지 않는다는 내용입니다.
③의 경우, "안녕안녕"이라는 결과값을 얻을 수 있었습니다.
④의 경우, "can't multiply sequence by non-int of type 'str'"이라는 오류 문구가 떴습니다. str유형이 아니면 곱할 수가 없다고 합니다.
⑤의 경우, ②과 동일하게 "unsupported operand type(s) for / : 'str' and 'str'"이라는 오류 문구가 떳습니다. '/'연산자 역시 str에서만 가능하다는 내용입니다.
이로써, 문자데이터는 '+'와 "*"만 쓸 수 있다는 것을 확인하였습니다.
그럼 여러가지 연산자를 하나씩 알아보도록 하겠습니다.
데이터 연결 연산자 : +
'+' 연산자를 이용하는 경우는 문자 데이터를 연결하는 기능을 합니다. 쉬운 예시를 들어 말하자면, 2가지 다른 데이터를 이용해서 하나의 구분자를 만들고자 할 때, 이름, 전화번호가 나열되어 있는데, '이름1234'라고 표현하고 싶을 때 + 연산자를 써줍니다. 간단하게 문자 데이터 옆에 따옴표를 붙인 후에 중간에 "+"만 연결해주면 됩니다.
데이터 반복 연산자 : *
'*' 연산자의 경우는 문자 데이터를 반복해서 연결하는 기능을 가집니다. 반복할 데이터 * 반복 횟수 식을 사용하면 내가 원하는 데이터를 원하는 횟수만큼 반복할 수가 있는 겁니다. 만약 다이아몬드 모양을 만들고 싶을 때는
print(" "*5+"*"*1)
print(" "*3+"*"*5)
print(" "*1+"*"*9)
print(" "*3+"*"*5)
print(" "*5+"*"*1)
▶ 이런 결과값이 나옵니다.
*
*****
*********
*****
*
※ 주의해야 할 점은 곱할 때 사용하는 *와 문자데이터로써 사용하는 *는 잘 구분해야 한다는 겁니다.
데이터 길이 함수 : len
len 함수를 이용해서는 데이터 길이도 구할 수 있습니다. 데이터 길이를 왜 구해야 하느냐 의문을 가질 수도 있는데요, 우리가 데이터를 이용해서 자르거나 필요한 데이터만을 뽑아 쓸 때 데이터 길이를 이용해서 데이터 하나하나를 판별할 수 있기에 유용하게 쓰입니다. 데이터 길이 함수 len의 특징은
1) 공백도 한개의 문자로 인식을 하고, 2) 특수 문자 역시 하나의 문자로 인식합니다. 3) 이스케이프 문자(\)의 경우에는 바로 다음 문자와 붙여서 한개로 인식합니다.
댓글