겉바속촉
[PYTHON] 파이썬_텍스트 처리 본문
안녕하세요
겉바속촉입니다
!^^!
!!파이썬 시작하기!!
이번에는 텍스트 처리 전반에 대해서
알아보려고 합니다
파이썬에서 텍스트는 글자, 숫자, 기호들의 순열인 문자열(string)로 표현되는데요
타입은 바로 str입니다:)
ㄴ작은 따옴표나 큰 따옴표로 값을 감싸서 문자열을 표시하며, 여는 따옴표와 닫는 따옴표는 반드시 동일해야 합니다
문자열 연산
정수처럼 보이는 문자열이면 int 함수 적용 가능
실수인 문자열이라면 flaoat 함수 적용 가능
* 연산자도 문자열에 적용 가능
내장함수 len() : 따옴표 사이의 문자 개수 반환
문자열은 값이라서 변수에 문자열 할당하는 것도 가능
의미 문자 = 메타 문자 = 특수 문자
- 어떤 기능에서 특별한 용도로 사용되는 문자
- 문자 그 자체에 특별한 의미가 결함 된 상태
ex) URL에서 파라미터의 시작을 나타낼 때 --> ?
URL에서 파라미터의 이름과 값을 구분할 때 --> =
URL에서 파라미터와 파라미터를 구분할 때 --> &
http://www.example.com/test.do?name=lee&age=26&...
ex) SQL문에서 문자열 데이터를 나타낼 때 --> 홑따옴표
select * from members where name = 'lee'
의미 문자에서 의미를 제거하고 문자 그 자체만 사용할(남길) 경우
ex) 웹 서버로 전달하는 내용이 vendName이라는 파라미터의 값으로 Bandi & Luice값을 전달해야 하는 경우
http://www.example.com/test.do?vendName=Bandi & Luice
=> vendName에서 Bandi 까지만 그리고 Luice 까지 따로 인식해버림
=> 즉 Bandi랑 Luice를 하나의 값으로 인식 못함
=> 이때 사용해야하는 것이 바로 이스케이프
이스케이프 : 원래 의미를 가지고 있는 문자가 있다면 의미를 지우고 문자만 남기는 것
(문자 자체로 인식할 수 있게 해주는 것
ex) 회원 정보 중에서 이름이 "Juhyun's Gutbasokchock"을 조회할 경우
select * from members where name = 'Juhyun's Gutbasokchock' ---> syntax 오류 발생
---> Juhyun까지만 인식
=> 이럴 때 필요한 것이 바로 이스케이프
: Juhyun과 s 사이의 ' 표시가 의미를 갖지 않고 문자 그 자체로 인식할 수 있게 하는 것
- 방법 1) 이스케이프를 의미하는 의미 문자를 사용 ==> \ (역슬래쉬)
select * from members where name = 'Juhyun\'s Gutbasokchock'
- 방법 2) 해당 기능에서 제공하는 일정 규칙에 따라서 문자열을 변경(데이터 변형)
==> 인코딩한다는 것 (반대는 디코딩)
URL 인코딩 --> & --> %26
http://www.example.com/test.do?vendName=Bandi%20%26%20Luice
select * from members where name = 'Juhyun' 's Gutbasokchock'
- 문자열 안에 작은 따옴표 또는 큰 따옴표를 넣어야 하는 경우도 있습니다
다음과 같이 해주시면 됩니다
백슬래시와 작은 따옴표를 합친 부분이 바로 이스케이프 문자열이 되는 것이쥬
여기서 알아야 할 것은 \' 라서 두개로 보이지만 글자수는 1개!
- 문자열 앞뒤에 세 개의 작은 따옴표 또는 큰 따옴표를 사용한다면 다행 문자열을 만들 수 있음
개행 문자
ASCII 코드의 약어 | ASCII 코드의 번호 | 프로그램에서 특수 기호 | 의미 |
CR | 0D | \r | 커서를 처음으로 이동 |
LF | 0A | \n | 커서를 다음 줄로 이동 |
정보 출력
print() 함수
사람이 읽을 수 있는 형태로 문자열을 출력
\t : 열 맞춰 값을 정렬
\n : 다행 문자열 내에서 새로운 줄로 바뀜
, (쉼표) : 쉼표로 구분된 값리스트를 전달하면 값 사이에 공백이 출력 + 마지막 값 뒤에는 새 줄
print() (인자 없으면) : 현재 줄을 끝내고 바로 다음 줄로 넘어감
키워드 인수
- sep = ' ' (원래 기본 구분자는 공백이지만 sep을 뭐로 두느냐에 따라 구분자가 바뀜)
- end = '\n'
- file=sys.stdout
- flush=False
키보드로 정보 받기
Input()함수
- 사용자가 입력한 내용이 숫자처럼 보여도 무조선 문자열 반환
- 키보드에서 한 줄의 텍스트를 읽어들임
다음과 같이 입력하면 커서가 내려갑니다
우리가 입력해야되는 거에요
Homo sapiens라고 입력하고
species라고 치니 우리가 입력해준 값이 출력이 되는군요
하나 더해볼게요
그럼 쟤의 type을 알아볼까요??
오호.... 문자열로 나옵니다:)
그럼 타입 변환시켜줘볼게요
'IT 일기 (상반기) > PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬_모듈화 방식 (0) | 2021.01.05 |
---|---|
[PYTHON] 파이썬_불 타입, 연산자 우선순위, if 문 (0) | 2021.01.05 |
[PYTHON] 파이썬_IDLE 활용하기 (0) | 2021.01.04 |
[PYTHON] 파이썬_지역변수, 새로운 함수 디자인 (0) | 2021.01.04 |
[PYTHON] 파이썬_제공되는 함수, 사용자 정의 함수, 메모리 주소 (4) | 2021.01.04 |