[Python] 04.문자열 처리
- Develop/Python
- 2020. 12. 29.
■ 문자열 인덱스
스트링으로 값을 받을때는 자동으로 인덱스 처리가 됩니다.
스트링 인덱스는 0부터 시작되며 끝에서 읽어올 시 -1부터 시작합니다.
▶︎ 사용방법
변수명[1] : 특정 인덱스에 값. : y출력
변수명[0:2] : 인덱스 범위 값 : py까지 출력. 인덱까지의 값이 아니라 인덱스 -1. 즉 인덱스 번호 앞자리까지만 가지게 됨.
▶︎ 예제코드
• 예제 1
코드 :
a = "python"
print(a[0]);
print(a[1]);
print(a[2]);
결과 :
p
y
t
• 예제 2
코드 :
a = "python"
print(a[0:2])
print(a[1:2])
print(a[2:4])
결과 :
py
y
th
• 예제 3
코드 :
name1 = "aqua man"
name2 = "cat woman"
space = name1.find(" ") # 공백 문자의 인덱스를 얻어서 저장. 공백 문자로 이름과 성을 구분
name1_first = name1[0:space] # 첫 문자부터 공백 문자까지(공백은 제외) 모든 문자를 가져와서 이름으로 저장
name1_last = name1[space+1:len(name1)] # 공백바로 다음 문자부터 마지막 문자까지 모든 문자를 가져와서 성으로 저장.
print(name1_first)
print(name1_last)
space = name2.find(" ") # 공백 문자의 인덱스를 얻어서 저장. 공백 문자로 이름과 성을 구분
name2_first = name2[0:space] # 첫 문자부터 공백 문자까지(공백은 제외) 모든 문자를 가져와서 이름으로 저장
name2_last = name2[space+1:len(name2)] # 공백바로 다음 문자부터 마지막 문자까지 모든 문자를 가져와서 성으로 저장.
print(name2_first)
print(name2_last)
결과 :
aqua
man
cat
woman
■ 특정 문자 위치 찾기
스트링 문자 안에서 특정 문자를 찾을때 사용합니다.
▶︎ 사용방법
변수명.find("찾을문자열") : 앞에서부터 찾기
변수명.rfind("찾을문자열") : 뒤에서부터 찾기
▶︎ 예제 코드
• 예제 1 : 앞에서부터 찾기
코드 :
str = "python"
print(str.find("p"))
print(str.find("y"))
print(str.find("t"))
print(str.find("h"))
print(str.find("o"))
print(str.find("n"))
결과 :
0
1
2
3
4
5
인덱스 즉 문자의 위치를 반환
• 예제 2 : 뒤에서부터 찾기
코드 :
str = "python"
print(str.rfind("p"))
print(str.rfind("y"))
print(str.rfind("t"))
print(str.rfind("h"))
print(str.rfind("o"))
print(str.rfind("n"))
결과 :
0
1
2
3
4
5
인덱스 즉 문자의 위치를 반환. 뒤에서부터 찾게 됨.
■ 문자열에서 해당 문자가 있는지 여부 확인.
Boolean값(True 혹은 False)으로 리턴됩니다.
▶︎ 사용방법
"문자열" in str
▶︎ 예제코드
코드 :
str = "python"
print("on" in str)
print("no" in str)
print("py" in str)
print("yp" in str)
결과 :
True
False
True
False
■ 문자열의 빈도 구하기.
문자열 안에 특정 단어 혹은 글자가 몇번(사용횟수)이나 사용되는지 확인합니다.
▶︎ 사용방법
변수명.count("문자 혹은 문자열")
▶︎ 예제코드
코드 :
fruit = "banana"
print(fruit.count("an"))
결과 :
2
na가 2번 있기 때문에 2가 출력.
■ 문자열 교체
문자열 안에 특정 문제를 교체합니다.
▶︎ 사용방법
변수명.replace("원본문자","바꿀문자")
▶︎ 예제코드
코드 :
a = "All I Want for christmas Is You."
print(a.replace("A","a"))
결과 :
all I Want for christmas Is You.
대문자 A가 소문자 a로 변경.
■ 수학적 문자열.
스트링 문자열에서 더하기(+)는 문자열 붙이기를 의미합니다.
스트링 문자열에서 곱하기(*)는 문자열 반복을 의미합니다.
▶︎ 사용방법
+ 더하기(+)
"one" + "two"는 onetwo
+ 곱하기(*)
"one" * 3 는 oneoneone
▶︎ 예제코드
코드 :
color = "red"
shape = "curcle"
number = 3
print(number * (color + "=" + shape))
결과 :
red=curclered=curclered=curcle
red=curcle이 3번 반복
■ print의 뉴라인(\n), 탭(\t) 바꾸기
print에서 사용되는 뉴라인(\n)과 탭(\t)을 처리하는 방법입니다.
▶︎ 사용방법
뉴라인(\n) : 변수명.replace("\n","변경할문자")
탭(\t) : 변수명.replace("\t","변경할문자")
▶︎ 예제코드
• 예제 1 : 새줄(new line) 교체
코드 :
word = "phoenix\ntiger\nlion"
print("첫번째 결과")
print(word)
print("두번째 결과")
word = word.replace("\n", "")
print(word)
결과 :
첫번째 결과
phoenix
tiger
lion
두번째 결과
phoenixtigerlion
2. 예제 2 : 탭(tab) 교체
코드 :
word = "phoenix\ttiger\tlion"
print("첫번째 결과")
print(word)
print("두번째 결과")
word = word.replace("\t", "")
print(word)
결과 :
첫번째 결과
phoenix tiger lion
두번째 결과
phoenixtigerlion
▶︎ 그외 스트링 문자열 상호작용
몇가지 스트링에서 상호작용을 하는 메소드를 알아봅니다.
▶︎ 예제 코드
예제 1 : 프롬프트에서 사용자가 입력한 값 받아오기
사용방법 : input("프롬프트 출력 문자")
코드 :
user_value = input("값을 입력하세요 : ")
예제 2 : 시작문자 대문자로 만들기
사용방법 : 변수명.capitalize()
코드 :
print(user_value.capitalize())
예제 3 : 대문자를 소문자로, 소문자를 대문자로 바꾸기
사용방법 : 변수명.swapcase()
코드 :
print(user_value.swapcase())
예제 4 : 모든문자를 대문자로 바꾸기
사용방법 : 변수명.upper()
코드 :
print(user_value.upper())
예제 5 : 모든문자를 소문자로 바꾸기
사용방법 : 변수명.lower()
코드 :
print(user_value.lower())
▶︎ 예제 코드 및 결과 :
예제 코드 :
user_value = input("값을 입력하세요 : ")
print(user_value.capitalize())
print(user_value.swapcase())
print(user_value.upper())
print(user_value.lower())
결과 :
값을 입력하세요 : i Love You
I love you
I lOVE yOU
I LOVE YOU
i love you
■ 파이선 다른 회차
[Python] Intro : Very Quick Python : https://myinfrabox.tistory.com/169
[Python] Intro : Very Quick Python
개인적으로 공부하면서 정리해 놓은 파이선 자료를 업로드합니다. 여기의 내용은 문법에 대한 자세한 설명은 생략합니다. 개발 경험이 있는 분들에게 굳이 문법에 대한 자세한 설명은 필요없으
myinfrabox.tistory.com
[Python] 01.Python 준비 : https://myinfrabox.tistory.com/170
[Python] 01.Python 준비
파이선을 처음 접할때 콘솔로 프로그래밍하기 보다는 편리한 IDE툴을 이용해서 접해보기를 권합니다. 보통 프로그래밍을 처음 배울때 날(raw)코딩으로 처음 접하기를 권하고 저또한 마찬가지이
myinfrabox.tistory.com
[Python] 02.Python 스크립트 작성 방법 : https://myinfrabox.tistory.com/171
[Python] 02.Python 스크립트 작성 방법
리눅스, 유닉스에서 파이선을 실행시 맨위에 스크립트 종류를 선언합니다. 물론 선언하지 않고도 수행은 가능합니다. 그러나 리눅스, 유닉스에서 실행되는 대부분의 스크립트는 맨위에 특정 스
myinfrabox.tistory.com
[Python] 03.변수 선언 및 할당 : https://myinfrabox.tistory.com/172
[Python] 03.변수 선언 및 할당
1. 변수 할당 파이선에서 변수할당은 다른 스크립트 언어(php, shell script)처럼 특정 스트링을 입력 후 값을 할당합니다. 좌측은 변수명, 우측은 값을 입력합니다. 또한 변수명은 숫자로 시작할 수
myinfrabox.tistory.com
[Python] 05.조건문 : https://myinfrabox.tistory.com/174
[Python] 05.조건문
■ 조건문이 참 혹은 거짓일경우. 조건문의 True, False에 따라 그에 맞는 분기를 실행합니다. ▶︎ 사용방법 if 조건문: ▶︎ 예제 코드 코드 : num_a = 2 if num_a > 0: print("num_a가 0보다 큽니다") else: pr..
myinfrabox.tistory.com
[Python] 06.반복문 : https://myinfrabox.tistory.com/175
[Python] 06.반복문
■ for문 시퀀스의 모든 요소가 처음부터 마지막 수행될때까지 계속 반복힙ㄴ;디/ ▶︎ 사용방법 for <루프변수> in <튜플, 리스트등의 시퀀스>: ▶︎ 예제 코드 • 예제 1 : 시퀀스의 부분을 순서대
myinfrabox.tistory.com
[Python] 07.튜플(Tuple) : https://myinfrabox.tistory.com/176
[Python] 07.튜플(Tuple)
■ 튜플 뒤에서 배울 리스트와 비슷합니다. 데이터를 열거하는 식으로 만듭니다. ()안에 데이터를 열거합니다. 튜플의 특징은 tuple = (1,)처럼 단지 1개의 요소만을 가질 때는 요소 뒤에 콤마(,)를
myinfrabox.tistory.com
[Python] 08.리스트(List) : https://myinfrabox.tistory.com/177
[Python] 08.리스트(List)
■ 리스트 선언 리스트를 선언하는 방법입니다. ▶︎ 사용방법 기본적으로 []를 사용해서 선언합니다. ["리스트요소","리스트요소","리스트요소","리스트요소"] ▶︎ 예제 코드 strlist = ["TV","냉장
myinfrabox.tistory.com
[Python] 09.사전(Dictionary) : https://myinfrabox.tistory.com/178
[Python] 09.사전(Dictionary)
■ 사전 선언 방법 - 1 컬렉션중 사전을 만드는 방법입니다. 사전은 키:값 방식의 선언 방법입니다. {}(중괄호)문으로 시작합니다. 그리고 key:value방식으로 항목을 만듭니다. ▶︎ 사용방법 사전명
myinfrabox.tistory.com
[Pytho] 10.set : https://myinfrabox.tistory.com/179
[Pytho] 10.set
□ set이란? 키만 활용하는 데이터 구조로 이해합니다. 수학에서 집합과 동일한 개념입니다. ■ set 선언 방법 set을 선언하는 방법입니다. ▶︎ 사용방법 set변수 = {항목1, 항목2, ....} ▶︎ 예제 코
myinfrabox.tistory.com
[Python] 11.함수(Function) : https://myinfrabox.tistory.com/180
[Python] 11.함수(Function)
□ 사전 습득 지식 : 독 스트링(주석 묶기) 함수에는 보통 함수 명세서라 부르는 주석이 있습니다. 이곳에는 함수의 사용방법, 파라미터등을 설명합니다. 의무는 아니지만 팀으로 개발하는 소스
myinfrabox.tistory.com
[Python] 12.클래스(Class) : https://myinfrabox.tistory.com/181
[Python] 12.클래스(Class)
□ 클래스 파이선을 이용하여 클래스를 만들 수 있습니다. 다른 객체지향 언어와 거의 비슷합니다. 클래스를 만들고 객체로 선언하여 사용합니다. 그리고 객체의 메소드를 호출해서 사용합니다
myinfrabox.tistory.com
[Python] 13.외부 클래스 사용하기 : https://myinfrabox.tistory.com/182
[Python] 13.외부 클래스 사용하기
□ 외부 클래스 사용하기 파이선에도 여러가지 유용한 클래스를 제공합니다. 수학, 스트링, 랜덤수, 시간등등 여러가지 외부에서 임포트해서 유용하게 사용할 수 있는 여러 클래스를 제공합니
myinfrabox.tistory.com
[Python] 14.파일처리 : https://myinfrabox.tistory.com/183
[Python] 14.파일처리
□ 파일처리 파일을 생성, 수정, 읽기를 하는 방법을 알아봅니다. ■ 파일 생성. 신규 파일을 생성합니다. 만약 기존 파일이 있을시 덮어씁니다. 파일을 생성하고 그 파일안에 내용을 작성할 수
myinfrabox.tistory.com
[Python] 15.MySQL Database : https://myinfrabox.tistory.com/184
[Python] 15.MySQL Database
□ MySQL데이터베이스 사용방법 MySQL 데이터베이스에 대해 사용방법을 알아봅니다. DB생성, 테이블 생성-삭제, DML문법을 알아봅니다. ■ 데이터 베이스 사용을 위한 환경설정. 파이선에서 MySQL데이
myinfrabox.tistory.com
'Develop > Python' 카테고리의 다른 글
[Python] 06.반복문 (0) | 2020.12.30 |
---|---|
[Python] 05.조건문 (0) | 2020.12.29 |
[Python] 03.변수 선언 및 할당 (0) | 2020.12.29 |
[Python] 02.Python 스크립트 작성 방법 (0) | 2020.12.29 |
[Python] 01.Python 준비 (0) | 2020.12.28 |