Python의 문자열 기본 사항

완료됨

Python의 문자열은 간단해 보이지만 문자열 규칙에 파악해야 하는 몇 가지 복잡한 부분이 있습니다. 규칙을 알면 값을 수정하거나 텍스트 형식을 지정할 때 문자열 동작에 놀라지 않을 수 있습니다.

간단한 문자열

이 단원의 예제에서는 다음과 같이 변수에 할당된 달에 대한 하나의 사실이 있습니다.

fact = "The Moon has no atmosphere."
print(fact)

출력은 텍스트가 변수에 할당되었음을 보여줍니다. The Moon has no atmosphere.

문자열의 불변성

Python의 문자열에는 불변성이 있습니다. 즉, 문자열을 변경할 수 없습니다. 문자열을 변경할 때 Python에서 오류를 제공하지 않으므로 문자열 형식의 이러한 속성이 놀라울 수 있습니다.

변수에 할당된 단일 팩트에서 다른 팩트(문장)를 추가해야 합니다. 다음 예제와 같이 두 번째 팩트 추가가 변수를 변경하는 것처럼 보입니다.

fact = "The Moon has no atmosphere."
fact + "No sound can be heard on the Moon."

출력은 다음과 같습니다. The Moon has no atmosphere.No sound can be heard on the Moon.

fact 변수를 수정한 것처럼 보일 수 있지만 값을 빠르게 확인하면 원래 값이 변경되지 않은 것으로 나타납니다.

fact = "The Moon has no atmosphere."
fact + "No sound can be heard on the Moon."
print(fact)

출력: The Moon has no atmosphere.

여기에서 요령은 반환 값을 사용해야 한다는 것입니다. 문자열을 추가할 때 Python은 문자열을 수정하지 않지만 그 결과로 새 문자열을 반환합니다. 새 결과를 유지하려면 이를 새 변수에 할당합니다.

fact = "The Moon has no atmosphere."
two_facts = fact + "No sound can be heard on the Moon."
print(two_facts)

출력: The Moon has no atmosphere.No sound can be heard on the Moon.

문자열에 대한 작업은 결과적으로 항상 새 문자열을 생성합니다.

따옴표 사용 정보

Python 문자열을 작은따옴표, 큰따옴표 또는 삼중 따옴표로 묶을 수 있습니다. 서로 바꿔서 사용할 수 있지만 프로젝트 내에서 한 가지 형식을 일관되게 사용하는 것이 가장 좋습니다. 예를 들어 다음 문자열에서는 큰따옴표를 사용합니다.

moon_radius = "The Moon has a radius of 1,080 miles."

그러나 문자열에 따옴표로 묶인 단어, 숫자 또는 특수 문자(부분 문자열)가 포함된 경우 다른 스타일을 사용해야 합니다. 예를 들어 부분 문자열에서 큰따옴표를 사용하는 경우 전체 문자열은 다음과 같이 작은따옴표로 묶습니다.

'The "near side" is the part of the Moon that faces the Earth.'

마찬가지로 문자열 내 어디든 작은따옴표(또는 다음 예제의 달과 같이 아포스트로피)가 있는 경우 전체 문자열을 큰따옴표로 묶습니다.

"We only see about 60% of the Moon's surface."

작은따옴표와 큰따옴표를 번갈아 사용하지 않으면 다음과 같이 Python 인터프리터에서 구문 오류가 발생할 수 있습니다.

'We only see about 60% of the Moon's surface.'
  File "<stdin>", line 1
    'We only see about 60% of the Moon's surface.'
                                       ^
SyntaxError: invalid syntax

텍스트에 작은따옴표와 큰따옴표 조합이 있는 경우 삼중 따옴표를 사용하여 인터프리터 문제를 방지할 수 있습니다.

"""We only see about 60% of the Moon's surface, this is known as the "near side"."""

여러 줄 텍스트

여러 줄의 텍스트를 단일 변수로 정의하는 몇 가지 방법이 있습니다. 가장 일반적인 방법은 다음과 같습니다.

  • 줄 바꿈 문자(\n)를 사용합니다.
  • 삼중 따옴표(""")를 사용합니다.

줄 바꿈 문자는 출력을 인쇄할 때 텍스트를 여러 줄로 구분합니다.

multiline = "Facts about the Moon:\n There is no atmosphere.\n There is no sound."
print(multiline)
Facts about the Moon:
 There is no atmosphere.
 There is no sound.

다음과 같이 삼중 따옴표를 사용해도 동일한 결과를 얻을 수 있습니다.

multiline = """Facts about the Moon:
 There is no atmosphere. 
 There is no sound."""
print(multiline)