[Python][기초] 3. 문자열 string

나나콘·2023년 10월 31일

Python 기초 공부

목록 보기
3/11
post-thumbnail

String (문자열) 기본구조

  • 문자나 문자들을 나열한 것입니다.
  • 값을 변경할 수 없으며 순서가 있습니다.
  • 큰따옴표(" ")나 작은따옴표(' ')로 구분합니다.
my_str = "가나다"

print(my_str)
# 가나다

type(my_str)
# <class 'str'>
  • 문자열 안에 큰따옴표나 작은따옴표를 넣고 싶을 때는 서로 다른 따옴표를 함께 씁니다.
print("Let's go!")
print('I said, "Hello!"')
  • 같은 따옴표를 세 번씩 쓰면 여러 줄을 표현할 수 있습니다.
## 여러줄 하나의 문자열 변수
## """string""" 
my_str = """가가가
나나나
다다다
"""

my_str
# '가가가\n나나나\n다다다\n'

Formatting

%d %f %s

  • %d : 정수형 숫자를 대입할 수 있습니다.
my_str = 'My name is %s' % 'Changon Na'
my_str
# 'My name is Changon Na'
  • %d : 정수형 숫자를 대입할 수 있습니다.
'%d %d' % (1, 2)
# '1 2'
  • %f : 실수형 숫자를 대입할 수 있습니다.
'%d %f %s' % (1, 2.0, 'hi')
# '1 2.000000 hi'

format()

'{ }'.format( )

  • 포맷팅을 수행하는 문자열의 메소드입니다.
  • 중괄호 { }를 이용해 값을 대입합니다.
  • % 연산자보다 파이썬스러운 방법입니다.
  • 괄호 안에 숫자를 넣어 순서도 지정할 수 있습니다.
'My name is %s' % 'changonna'
# 'My name is changonna'

'My name is {}'.format('changonna')
# 'My name is changonna'

'{} * {} = {}'.format('2', '3', '2 * 3')
# '2 * 3 = 6'

## 순서 지정해서 format 사용하기
'{1} * {0} = {2}'.format('2', '3', '2 * 3')
# '3 * 2 = 6'

Indexing

my_name = '나찬곤의 코딩'

my_name[3]
# '의'
my_name[6]
# '딩'

my_name[-1]
# '딩'
my_name[-4]
# '의'

Slicing

  • 문자열에서 여러 값을 한꺼번에 잘라옵니다.
  • 콜론(:)을 이용해 여러 값을 한꺼번에 가져올 수 있습니다.
  • 기존 문자열은 그대로 두고 복사해서 사용합니다.
>>> my_str[0:4]
'나찬곤의'
>>> my_str[5:8]
'파이썬'
>>> 
  • 앞이나 뒤 숫자를 생략할 수도 있습니다.
>>> my_str[:3]
'나찬곤'
>>> 
>>> my_str[5:]
'파이썬'

method

  • 특정한 기능을 수행하기 위한 코드를 모아두고 이름을 붙인 것을 함수라고 합니다.
  • 메서드는 특정 객체만 사용할 수 있는 함수를 말합니다.
  • string.split(): 문자열을 공백 기준으로 분리하는 메서드입니다
>>> fruit_str = 'apple banana lemon'
>>> fruits = fruit_str.split()
>>> print(fruits[0])
apple
>>> print(fruits[1])
banana
>>> my_name = '김왼손의 왼손코딩'
>>> print(my_name.split())
['김왼손의', '왼손코딩']

Docstring

  • 문서화 문자열(Documentation string)입니다.
  • 함수가 어떤 일을 수행하는지 설명합니다.
  • 보통 큰따옴표(" ") 세 개를 사용합니다.
def 함수이름(인자1, ...):
    """함수에 대한 설명"""
    실행할 명령1
    실행할 명령2
    ...
    return 결과

end

  • end: print() 함수에서 출력의 끝을 지정합니다.
  • 파이썬에서는 줄 바꿈(\n)이 기본 값입니다.
  • 특정한 기능을 수행하기 위해 미리 정해둔 문자 조합을 이스케이프 코드라고 합니다.
>>> # print('', end='')
>>> # 출력의 끝 지정

>>> print('집단지성')
집단지성

>>> print('집단지성', end='')
집단지성

>>> print('집단지성', end='/')
집단지성/

Escape Code

>>> # Escape code
>>> # ex) \n \t

>>> print('나찬곤의 파이썬')
나찬곤의 파이썬
>>> print('나찬곤의\n파이썬')
나찬곤의
파이썬
>>> print('나찬곤의\t파이썬')
나찬곤의	파이썬



>>> print('미운', end='\t')
미운	

>>> print('미운', end='\t'); print('코딩')
미운	코딩
profile
지식을 기록하고, 경험을 코드로 남겨라.

0개의 댓글