1. 문자열 자료형
(1) 문자열 만드는 방법 4가지
1) 큰따옴표
2) 작은 따옴표
3) 큰따옴표 3개를 연속 사용(주석 & 문자열)
4) 작은따옴표 3개를 연속 사용 (주석 & 문자열)
5) 문자열에 따옴표 포함방법
① 문자열에 큰따옴표를 포함하려면 작은따옴표로 감싸고, 작은따옴표를 포함하려면 큰 따옴표로 감싸면 된다.
② 따옴표 앞에 백슬래시(\) 사용
※ 이스케이프 코드: 프로그래밍 할 때 사용할 수 있도록 미리 정의해 둔 ‘문자조합’
☞ \n: 줄 바꿈, \t: 문자열 간격, \\: \를 그대로 사용, \’: 작은따옴표 사용, \”: 큰따옴표 그대로 사용
☞ 이스케이프 문자를 인식시키지 않을 때는 문자열 앞에 r을 써주면 된다.
ex) r'c:\aa\nnc\kbs.txt' => c:\aa\nnc\kbs.txt
(2) 문자열 연산
1) 문자열 + 문자열 = 문자열이 연결되어 반환
2) 문자열 * 숫자 = 숫자만큼 문자열 반복반환
3) 문자열과 숫자형을 연산 할 때는 숫자를 문자열로 변환한 후에 연산가능
① str() 사용
② 작은 따옴표나 큰 따옴표 사용
ex) '강남'+'거리'+str(2021)+' ' +'20' +'21'+ ' ' + str(int('2000')+int('21'))
= > 강남거리2021 2021 2021
(3) 문자열 길이 반환: len(문자열) -> 띄어쓰기도 포함
a = “Life is short”
(4) 인덱싱, 슬라이싱
1) 인덱싱(Indexing): 문자열의 순서를 번호를 매긴 것
ex) a[0] = ‘L’, a[11] = r , a[-1] = t = a[12]
2) 슬라이싱(Slicing): 잘라낸다
ex1) a[0:3] = Lif => 범위: 0 a 3
ex2) a[0:4] = Life => 범위: 0 a 4
ex3) a[6:12] = s shor => 범위: 6 a 12
ex4) a[6: ] = s shor => 범위: 6 a 끝까지
ex5) a[ :4] = Life => 범위: a 3 처음부터
ex6) a[ : ] = Life is short
(5) 포매팅(Formatting)
ex) “I eat %d apples.” %3 => ‘I eat 3 apples’
ex) '나는 키가 %f이고, 에너지가 %d%%.'%(177.7, 100) => 나는 키가 177.700000이고, 에너지가 100%.
1) 정렬과 공백
① “%10s” % “hi”: 전체 길이 10자리에서 오른쪽 정렬로 hi입력
②
“%-10sjane” %’hi’: 전체길이 10자리 왼쪽 정렬 hi + jane
2)
소수점 표현
① “%0.4f” % 3.4251546: 소수점 아래 4번째까지 표현 => ‘3.4251’
② %10.4f” % 3.0246256: 전체길이 10자리에서 오른쪽 정렬로 소수점 아래 4번 째까지 표현
3)
format함수 사용
① 인덱스로 대입
ex1) '이름은 {0}, 나이는 {1}'.format('한국인', 33) => 이름은 한국인, 나이는 33
ex2) '이름은 {1}, 나이는 {0}'.format(34, '강나루') => 이름은 강나루, 나이는 34
② {}의 순서대로 값을 입력하면 자동 대입
ex) '이름은 {}, 나이는 {}'.format('신선해', 33) => 이름은 신선해, 나이는 33
③ 변수명으로 대입
ex) '이름은 {name}, 나이는 {age}'.format(name='한국인', age=33) => 이름은 한국인, 나이는 33
④ 인덱스와 변수명을 혼용하여 대입가능
⑤ 정렬, 공백 채우기
i. 왼쪽 정렬: “{0:[공백 채울 문자]<10}”.format(“hi”)
ii.
오른쪽 정렬: “{0:[공백 채울 문자]>10}”.format(“hi”)
iii.
가운데 정렬: “{0:[공백 채울 문자]^10}”.format(“hi”)
⑥
소수점 표현
ex) “{0:10.4f}”.format(3.0246256)
⑦
중괄호 표현: {{ }}.format() => { }
4) 파이썬 3.6버전부터는 문장 앞에 f를 붙이면 format함수를 대신할 수 있다.
ex1) name = ‘홍길동’, age = 30
f’나의 이름은 {name}입니다. 나이는 {age}입니다.’
=> ‘나의 이름은 홍길동입니다. 나이는 30입니다.’
ex2) f'{"python":!^12}' => !!!python!!!
(6) 문자열 관련 함수
1) 특정문자 개수 세기: 문자열.count(‘특정문자’)
ex) a = ‘hobby’
a.count(‘b’) = 2
2) 위치 찾기
① 문자열.find(‘특정문자’)
i. 특정문자가 처음으로 나오는 위치 index가 반환
ii. 없다면 -1이 반환
ex) s='sequence'
s.find('e') = 1, s.find('e',3) = 4, s.rfind('e') = 7: 오른쪽에서부터 몇번 째에 e가 처음으로 나오는지
② 문자열.index(‘특정문자’)
i. 특정문자가 처음으로 나오는 위치 index가 반환
ii. 없다면 error남
3) 문자열 삽입: “삽입할 문자”.join(“삽입 대상”)
ex) “:”.join(‘abcd’) => ‘a:b:c:d’
ex) “:”.join([‘a’,’b’,’c’,’d’]) => ‘a:b:c:d’
4) 소문자를 대문자로: 문자열.upper()
5) 대문자를 소문자로: 문자열.lower()
6) 공백지우기
① 왼쪽 공백 지우기: 문자열.lstrip()
② 오른쪽 공백 지우기: 문자열.rstrip()
③ 양쪽 공백 지우기: 문자열.strip()
7) 문자열 바꾸기: 문자열.replace(‘변경 대상’, ‘대체할 문자’)
ex) “안녕 조정석”.replace(‘안녕’, ‘하이’) => “하이 조정석”
8) 문자열 나누기: 문자열.split([sep] = “기준문자” 또는 ‘ ‘)
ex) ss = 'kbs mbc'.split(sep=' ')
print(ss) => ['kbs', 'mbc']
4. 제어문 - if, while, for (0) | 2021.04.25 |
---|---|
3. 파이썬 자료형 - (3) list, tuple, Dictionary, set, boolean, 변수 (0) | 2021.04.25 |
3. 파이썬 자료형 - (1) 숫자형 (0) | 2021.03.04 |
2. 파이썬 개요 (0) | 2021.03.04 |
1. Python 설치 & 환경설정 (0) | 2021.03.02 |