문자열의 format() 함수
- 문자열 형(데이터를 보관하는 일꾼)은 format()함수 (기능)을 가지고 있다. format()함수가 어떤 기능을 수행하는지 살펴보겠다.
print('{}'.format(24))
print('실내 온도는 {}도 입니다.'.format(24))
==>
24
실내 온도는 24도 입니다.
print('{} + {} = {}'.format(2,3,5))
==>
2 + 3 = 5
IndexError 예외
- {}기호의 개수가 format() 함수의 매개 변수 개수보다 많으면 indexError 예외가 발생
print('{} x {} = {}'.format(2,2))
==>
IndexError Traceback (most recent call last)
<ipython-input-10-1d21c777836d> in <cell line: 1>()
----> 1 print('{} x {} = {}'.format(2,2))
IndexError: Replacement index 2 out of range for positional args tuple
대소문자 바꾸기 : upper() 와 lower()
name = 'Jae-Yeong, Lee'
print(name.upper())
==>
JAE-YEONG, LEE
name = 'Jae-Yeong, Lee'
print(name.lower())
==>
jae-yeong, lee
name = 'Jae-Yeong, Lee'
print(name.upper())
print(name)
==>
JAE-YEONG, LEE
Jae-Yeong, Lee
- upper() 함수와 lower()함수를 사용하면 name이 가지고 있는 문자열의 내용이 바뀌는 것이 아니라 바뀐 내용만 반환하고 원 데이터는 그대로 유지된다. 이렇게 원 데이터가 변경되지 않는 함수를 비파괴적 함수라고 부른다.
문자열 양옆의 공백 제거하기 :strip()
- 다루는 데이터가 대부분 숫자라면 strip()함수를 쓸 일이 많다고 할 수는 없다. strip()함수가 하는 기능은 문자열 앞뒤에 붙은 공백(스페이스)를 제거한다.
price_product = ' 125,000원'
print(price_product)
print(price_product.strip())
==>
125,000원
125,000원
문자열의 구성 파악하기 : isXX()
- isalnum() : 문자열이 알파벳 또는 숫자로만 구성되어 있는지 확인
- isdigit() : 문자열이 숫자를 나타내는 문자로만 구성되어 있는지 확인, 다른 말로 문자가 하나라도 있으면 False반환
print('23'.isdigit())
print('23.12'.isdigit())
print('-23'.isdigit())
==>
True
False
False
문자열 찾기 : find() 와 rfind()
- find() 와 rfind() 함수는 주어진 문자열에서 특정 문자(열)과 일치하는 문자(열)의 첫 번째 인덱스 값을 반환
- find(문자열) : 문자열의 왼쪽부터 검색
- rfind(문자열) : 문자열의 오른쪽부터 검색(뒤에서부터 검색)
s = '가나다라가나다라'
print(s.find('가'))
print(s.find('가나'))
print(s.find('나다라'))
==>
0
0
1
s = '가나다라가나다라'
print(s.rfind('가'))
print(s.rfind('가나'))
print(s.rfind('나다라'))
==>
4
4
5
문자열과 in 연산자
- 문자열 내부에 특정 문자열이 있는지 확인하기 위한 in 연산자가 있다. 연산 결과는 있다 없다 둘중에 하나다.
'학교'in'종이 땡땡땡'
==>
False
'종이'in'종이 땡땡땡'
==>
True
문자열 자르기 : split()
- split()함수는 문자열을 특정 문자(열)을 기준으로 나누어 주는 기능을 한다. 나누어 분리한 것들을 요소로 하는 리스트 형 데이터를 반환한다.
your_hobby = '드라이브, 낚시, 등산'
print(your_hobby.split(','))
==>
['드라이브', ' 낚시', ' 등산']
your_hobby = '드라이브|낚시|등산'
print(your_hobby.split('|'))
==>
['드라이브', '낚시', '등산']
문자 대체 : replace()
ntime = '08-45-11'
ntime.replace('-', ':')
print(ntime)
ntime = ntime.replace('-', ':')
print(ntime)
==>
08-45-11
08:45:11
price = '2,000'
price = price.replace(',','')
print(type(price),price)
price = int(price)
print(type(price), price)
==>
<class 'str'> 2000
<class 'int'> 2000
<참고> f-문자열
print('3+4 = ' + str(3+4))
==>
3+4 = 7
print('3+4={}'.format(3+4))
==>
3+4=7
print(f'3+4={3+4}')
==>
3+4=7
name = '이재영'
hobby = '낚시'
address = '경상북도 안동시 안막동'
print(f'{name}의 취미는 {hobby}이고 사는 곳은 {address}입니다.')
==>
이재영의 취미는 낚시이고 사는 곳은 경상북도 안동시 안막동입니다.
'빅데이터 분석가 양성과정 > Python' 카테고리의 다른 글
Ch 03-2 조건문 / if ~else 와 elif 구문 (0) | 2024.07.04 |
---|---|
Ch 03-1 조건문 / 불 자료형과 if 조건문 (0) | 2024.07.04 |
Ch02-3 자료형 / 변수와 입력 (0) | 2024.07.04 |
Ch02-2 자료형 / 연산자 (0) | 2024.07.04 |
Ch02-1 자료형 / 자료형과 문자열 (0) | 2024.07.04 |