박가방
[python_3] 문자열 만들기 본문
[3] 작성 이유 : 파이썬 내 문자열의 문법 구조에 대한 이해와 이를 유동적으로 사용하기 위함
문자열(String) : 문자(한글, 영어, 숫자 등)들이 나열된 것
(C언어에서 문자열이란 메모리에 저장된 일련의 연속된 문자(character)들의 집합이다)
1. 문자열 내부에 따옴표 넣기
사용 이유 : 구문(문법, 구조, 순서 등) 오류(syntax error) 발생
틀린 문법
print("그는 내게 "반가워요" 라고 말했다.")
결과 :
이유 : 문자열로 인식하는 부분이 잘못됨.
1.1 큰따옴표로 문자열 만들기
print("그는 내게 '반가워요'라고 말했다.")
1.2 작은따옴표로 문자열 만들기
print('그는 내게 "반가워요"라고 말했다.')
1.3 이스케이프 문자 사용하기
1.3.1 큰 따옴표
print("그는 내게\"반가워요\"라고 말했다.")
print("그는 내게\'반가워요\'라고 말했다.")
1.3.2 작은 따옴표
print('그는 내게 \"반가워요\"라고 말했다')
print('그는 내게 \'반가워요\'라고 말했다')
1.3.3 줄바꿈 과 탭
print("안녕\n반가워") # 줄바꿈
print("안녕\t반가워") # 탭
1.3.4 역슬래시
\\ = 역슬래시 의미
print("줄바꿈은 \\n 을 쓰셔야합니다. ")
결과 : 줄바꿈은 \n 을 쓰셔야합니다. # 이스케이프 \n 이 입력되지 않음
1.3.5.1 여러줄 문자열
print("아름다운 이 강산을 지키는 우리\n 사나이 기백으로 오늘을 산다\n 포탄의 불바다를 무릅쓰면서\n 고향 땅 부모형제 평화를 위해")
#코드를 읽기 어렵다
#여러줄 문자열 기능을 사용하자
# """ or ''' - 여러줄 문자열 기능 지원
print("""아름다운 이 강산을 지키는 우리
사나이 기백으로 오늘을 산다
포탄의 불바다를 무릅쓰면서
고향 땅 부모형제 평화를 위해
""")
아름다운 이 강산을 지키는 우리
사나이 기백으로 오늘을 산다
포탄의 불바다를 무릅쓰면서
고향 땅 부모형제 평화를 위해
1.3.5.2 줄바꿈 없는 문자열
print("""\
아름다운 이 강산을 지키는 우리
사나이 기백으로 오늘을 산다
포탄의 불바다를 무릅쓰면서
고향 땅 부모형제 평화를 위해\
"""
)
문제 : 코드를 쉽게 보기 위해 엔터를 쳤으나 """ 이스케이프 문자에 의해 결과도 엔터가 입력된 값으로 나온다
해결 : \ 기호를 통해 해결할 수 있다. 줄 뒤에 \기호를 사용한다.
의미: 코드를 보기 위함이지 실제로 줄바꿈을 하지 않는다
2. 문자열 연결
print ("안녕히" + "가세요")
안녕히가세요
#문자끼리만 가능하다.
3. 문자열 반복
print("반가워요" *4)
반가워요반가워요반가워요반가워요
print(4* "반가워요")
반가워요반가워요반가워요반가워요
4. 문자 선택 연산자(인덱싱) - 문자열 내부의 문자 하나를 선택하는 연산자
4.1 인덱싱(indexing) - [ ] 연산자를 이용해 문자열의 특정 위치에 있는 문자를 참조하는 것
- 프로그래밍 언어는 숫자를 0부터 세는 "제로 인덱스(zero index)"와 1부터 세는 "원 인덱스(one index)"가 존재
- 파이썬은 제로 인덱스를 사용
슬라이싱(slicing) - [ : ] 연산자를 이용해 문자열 일부를 추출하는 것
print("반가워요"[0])
반
print("반가워요"[1])
가
print("반가워요"[-4])
반
print("반가워요"[-1]) # 주의
요
4.2 문자 범위 선택 연산자 - 주의
print("반가워요"[0:2]) # 주의! 뒤의 숫자-1번째까지 선택된다.
반가 # 0번째, 1번째
print("반가워요"[1:3])
가워 # 1번째, 2번쨰
print("반가워요"[1:])
가워요
print("반가워요"[:2]) # 주의
반가
5. 문자열 길이 - len() 함수 (len은 식별자)
print(len("반가워요"))
4
[1] 데이터 과학을 위한 파이썬 프로그래밍 - 최성철
[2] 혼자 공부하는 파이썬 - 윤인성
[3] http://www.tcpschool.com/c/c_string_string - 문자열
'프로그램 언어 > Python' 카테고리의 다른 글
[python_6] format() 함수 기능 및 응용 (0) | 2022.12.29 |
---|---|
[python_5] 연산자 및 변수 (0) | 2022.12.29 |
[python_4] 부동소수점과 고정소수점 (0) | 2022.12.29 |
[python_2] 기본적인 파이썬 용어 (0) | 2022.12.28 |
[python_1] 파이썬의 특징 (0) | 2022.12.27 |