본문 바로가기
Programing/Python

Python String: 파이썬 문자

by 멍멍돌이야 2023. 2. 27.
반응형

이 자습서에서는 Python 문자열과 기본 작업에 대해 알아보겠습니다.

 

1. Introduction to Python string: 파이썬 문자열 소개

문자열은 일련의 문자입니다. 파이썬에서는 따옴표 안에 있는 모든 것이 문자열입니다. 작은따옴표나 큰따옴표를 사용할 수 있습니다. 

 

사용예:

message = 'This is a string in Python'
message = "This is also a string"

 

문자열에 작은따옴표가 포함되어 있으면 다음과 같이 큰따옴표로 묶어야 합니다.

message = "It's a string"

 

문자열에 큰따옴표가 포함된 경우 작은따옴표를 사용할 수 있습니다.

message = '"Beautiful is better than ugly.". Said Tim Peters'

 

따옴표를 이스케이프 처리하려면 백슬래시(\)를 사용합니다. 

사용예:

message = 'It\'s also a valid string'

 

Python 인터프리터는 백슬래시 문자(\)를 특별하게 취급합니다. 

원하지 않으면 첫 번째 따옴표 앞에 문자 r을 추가하여 원시 문자열을 사용할 수 있습니다. 

 

예를 들면 다음과 같습니다.

message = r'C:\python\bin'

 

 

2. Creating multiline strings: 여러 줄 문자열 만들기

문자열을 여러 줄로 확장하려면 삼중따옴표 """...""" 또는 "'..."'를 사용합니다. 

 

예를 들면 다음과 같습니다.

help_message = '''
Usage: mysql command
    -h hostname     
    -d database name
    -u username
    -p password 
'''

print(help_message)

 

프로그램을 실행하면 다음과 같이 출력됩니다.

Usage: mysql command
    -h hostname
    -d database name
    -u username
    -p password

 

 

3. Using variables in Python strings with the f-strings:

f-문자열과 함께 Python 문자열의 변수 사용

 

문자열에서 변수 값을 사용하려는 경우가 있습니다.

예를 들어 메시지 문자열 변수 내에서 이름 변수의 값을 사용할 수 있습니다.

name = 'John'
message = 'Hi'

 

이렇게 하려면 여는 따옴표 앞에 문자 f를 놓고 변수 이름 주위에 중괄호를 넣습니다.

name = 'John'
message = f'Hi {name}'
print(message)

 

Python은 {name}을 name 변수의 값으로 대체합니다. 코드는 화면에 다음을 표시합니다.

Hi John

 

메시지는 형식 문자열 또는 줄여서 f-문자열입니다. 

Python은 버전 3.6에서 f-문자열을 도입했습니다.

 

 

4. Concatenating Python strings: Python 문자열 연결

문자열 리터럴을 서로 옆에 배치하면 Python이 자동으로 하나의 문자열로 연결합니다. 

 

예를 들면 다음과 같습니다.

greeting = 'Good ' 'Morning!'
print(greeting)

 

결과:

Good Morning!

 

 

두 문자열 변수를 연결하려면 연산자 +를 사용합니다.

greeting = 'Good '
time = 'Afternoon'

greeting = greeting + time + '!'
print(greeting)

 

결과:

Good Afternoon!

 

 

5. Accessing string elements: 문자열 요소에 액세스

문자열은 일련의 문자이므로 인덱스를 사용하여 해당 요소에 액세스할 수 있습니다. 

문자열의 첫 번째 문자는 인덱스가 0입니다.

다음 예제에서는 인덱스를 사용하여 요소에 액세스하는 방법을 보여줍니다.

str = "Python String"
print(str[0]) # P
print(str[1]) # y

 

작동 방식:

  • 먼저 문자열 "Python String"을 보유하는 변수를 만듭니다.
  • 그런 다음 대괄호 []와 인덱스를 사용하여 문자열의 첫 번째 및 두 번째 문자에 액세스합니다.
  • 음수 인덱스를 사용하면 Python은 문자열의 끝에서 시작하는 문자를 반환합니다.

사용예:

str = "Python String"
print(str[-1])  # g
print(str[-2])  # n

 

다음은 문자열 "Python String"의 인덱스를 보여줍니다.

+---+---+---+---+---+---+---+---+---+---+---+---+---+
| P | y | t | h | o | n |   | S | t | r | i | n | g | 
+---+---+---+---+---+---+---+---+---+---+---+---+---+
  0   1   2   3   4   5   6   7   8   9   10  11  12
-13  -12  -11  -10 -9  -8  -7  -6  -5  -4  -3  -2  -1

 

 

6. Getting the length of a string: 문자열의 길이 구하기

문자열의 길이를 얻으려면 len() 함수를 사용합니다. 

 

사용예:

str = "Python String"
str_len = len(str)
print(str_len)

결과:

13

 

 

7. Slicing strings: 문자열 슬라이싱

슬라이싱을 사용하면 문자열에서 하위 문자열을 가져올 수 있습니다. 

 

사용예:

str = "Python String"
print(str[0:2])

 

결과:

Py

 

str[0:2]는 인덱스 0(포함)에서 2(제외)까지의 문자를 포함하는 하위 문자열을 반환합니다.

슬라이싱 구문은 다음과 같습니다.

string[start:end]

하위 문자열은 항상 시작 부분의 문자를 포함하고 끝 부분의 문자열을 제외합니다.

시작과 끝은 선택 사항입니다. 

시작을 생략하면 기본값은 0입니다. 

끝을 생략하면 기본적으로 문자열의 길이가 됩니다.

 

 

8. Python strings are immutable: 파이썬 문자열은 불변입니다

파이썬 문자열은 변경할 수 없습니다. 문자열을 변경할 수 없음을 의미합니다. 

예를 들어 문자열에서 하나 이상의 문자를 업데이트하면 오류가 발생합니다.

str = "Python String"
str[0] = 'J'

 

오류내용:

Traceback (most recent call last):
  File "app.py", line 2, in <module>
    str[0] = 'J'
TypeError: 'str' object does not support item assignment</module>

 

문자열을 수정하려면 기존 문자열에서 새 문자열을 만들어야 합니다. 

예를 들면 다음과 같습니다.

str = "Python String"
new_str = 'J' + str[1:]
print(new_str)

 

결과:

Jython String

 

9. Summary

  • 파이썬에서 문자열은 일련의 문자입니다. 또한 Python 문자열은 변경할 수 없습니다.
  • 문자열 리터럴을 만들려면 작은따옴표 또는 큰따옴표 중 하나를 사용하십시오.
  • 문자열에서 따옴표를 이스케이프하려면 백슬래시 문자 \를 사용하십시오.
  • 원시 문자열 r'...'을 사용하여 백슬래시 문자를 이스케이프 처리합니다.
  • f-문자열을 사용하여 리터럴 문자열에 대체 변수를 삽입합니다.
  • 리터럴 문자열을 서로 옆에 배치하여 연결합니다. 그리고 + 연산자를 사용하여 문자열 변수를 연결합니다.
  • len() 함수를 사용하여 문자열의 크기를 가져옵니다.
  • str[n]을 사용하여 문자열 str의 위치 n에 있는 문자에 액세스합니다.
  • 슬라이싱을 사용하여 문자열에서 하위 문자열을 추출합니다.

 

 

 

 

 

 

출처: https://www.pythontutorial.net/python-basics/python-string/






728x90
반응형

댓글