파이썬 기초(2) : 문자열 다루기, 출력 포맷

기초/Python|2021. 12. 19. 21:57

파이썬에서는 변수를 선언할 때, 여러 줄의 문자열을 따옴표("")로 감싸 값으로 넣어 주려고 하면 한 줄만 인식한다.

이럴 때, 따옴표를 3개씩 문자열의 앞 뒤에 적어 주면 제대로 인식한다.

sentence = "이렇게 감싸면
			여러 줄은
            인식하지 못하고"
sentence2 = """이렇게 감싸면
			여러 줄도
            같이 인식한다."""

 

문자열(string)을 다루는 여러 함수

len(${변수명}) : 문자열의 글자 수를 세어 준다. 스페이스바( )와 줄바꿈도 센다.

${변수명}.count("문구") : 해당 문구가 변수 안에 몇번이나 들어 있는지 세어 준다.

${변수명}.find("문구") : 해당 문구가 몇 번째 위치에서 처음으로 나오는 지 찾아 준다. 맨 첫번째 위치는 0이다.

${변수명}.find("문구") : 해당 문자가 없을 경우에는 -1을 반환한다.

${변수명}.replace("바꾸고 싶은 문구", "바꿀 문구") : 특정 문자열의 특정 부분을 원하는 텍스트로 바꾸어 준다.

${변수명}.join("넣고 싶은 문구") : 문자열 사이에 특정 문구를 끼워넣어 준다.

${변수}.strip( ) : 문구의 앞쪽 , 뒤쪽 에 위치한 모든 스페이스바(' ')를 제거해 준다.

${변수}.strip( ) : 특정 문자를 제거하고 싶으면 큰 따옴표 안에 문자를 넣어 실행한다.

* lstrip, rstrip 등으로 왼쪽과 오른쪽에 있는 공백만 제거하는 것도 가능하다.

\(역슬래시)n : 개행 문자. 다음 줄로 넘어간다는 의미를 전해 준다.

인덱스(index) : 특정 문자의 위치를 가리키는 번호. ${변수명}.index('문자열')과 같이 쓴다.

인덱스(index) : 0부터 시작하고, 역순으로 가리킬 때는 맨 뒤에서부터 -1, -2,... 와 같이 정해진다.

인덱스(index) : 해당 문자가 없을 경우에는 에러를 발생시킨다.

슬라이싱(slicing) : 특정 문자열의 위치를 범위로 지정하여 추출한다. 콜론(:) 으로 지정해줄 수 있다.

*주의할 점* n:m 으로 지정할 경우, n, n+1, n+2,... m-1까지의 문자열을 출력한다. m까지가 아니다!

${변수}[num], ${변수}[num1:num2] 와 같이 대괄호로 감싸 사용한다.

doodoo = "python practice"
print(doodoo[3]) #h 출력, 문자열 앞에서부터 네 번째 문자를 보여 준다.
print(doodoo[3:6]) #hon 출력, 문자열 앞에서부터 네번째, 다섯번째, 여섯번째 문자를 보여 준다.

strip은 앞과 맨 뒤의 지정한 문자를 삭제해서 반환한다.

아무 문자도 쓰지 않으면 공백(' ')제거이며, 다른 문자열도 제거할 수 있다.

#strip 기본 형식 => 문자열.strip('떼어낼 문자')
문자열 = "  두두_공부_프로그래밍1  "
print(문자열.strip()) # 두두_공부_프로그래밍1
print(문자열.strip().strip("1")) # 두두_공부_프로그래밍

split은 잘라줄 문자를 지정하면 그 문자를 기준으로 문자열을 앞/뒤로 잘라 리스트 형태로 반환한다.

해당 문자는 포함하지 않는다! 

#split 기본 형식 => 문자열.split('잘라줄 문자')
문자열 = "두두공부_크롤링기본(1)"
print(문자열.split('(')) # ['두두공부_크롤링기본', '1)']
print(문자열.split('(')[0]) # 두두공부_크롤링기본

a = "김두두_프로그래밍_어쩌구_저쩌구_[1]"
a.split('_') # ['김두두', '프로그래밍', '어쩌구', '저쩌구', '[1]']

 

출력 포맷

문자열의 변수명 또는 문자열 그 자체를 따옴표로 감싸고, 아래와 같이 format함수를 작성하면

앞에서부터 순서대로 중괄호 내에 원하는 문자를 삽입하는 것이 가능하다.

중괄호 내에 숫자를 넣어 순서를 수동으로 지정하는 것도 가능하다. 숫자가 중복되면 같은 값이 들어간다!

ucm = "we can make it {} if we {} it out"
print(ucm.format("better", "talk"))
# we can make it better if we talk it out 출력

print("we can make it {} if we {} it out".format("better","talk"))
# we can make it better if we talk it out 출력

print("we can make it {0} if we {1} it out".format("better","talk"))
# we can make it better if we talk it out 출력

 

참고링크

참고링크2

 

 

댓글()