본문 바로가기

Programming/python

03.문자다루기

학습내용

1. 문자열 이해

2. 기본적인 문자열 조작함수


학습목표

1. 문자열에 대해 이해한다.

2. 문자열을 자르고 길이를 재는 등의 작업을 수행한다.


사전퀴즈

1. 숫자와 문자를 + 기호로 결합 할 수 있다. ( X )

  : 숫자와 문자를 결합할 수 없다. int() 함수를 통해 숫자로 변화하거나 str() 함수로 문자로 변환해서 결합연산을 수행한다.

2. 문자열을 나타내는 기호는 ""와 ''두 가지 모두 사용할 수 있다. ( O )

  : 두 가지 기호를 모두 사용해서 문자열을 나타낼 수 있으며, 주로 외따옴표(')를 사용하여 문자열을 표시한다.

문자를 다루는 방법 - string

- 프로그래머는 숫자 보다 문자열을 더 많이 다룬다.

mystring =  "hello world"

my_string2 = 'hello world'


문자열 결합 : +

>>> First_name = 'Monty'

>>> last_name = 'Python'

>>> Full_name = first_name + last_name

>>> Full_name

'MontyPython'


문자열 복제 : *

>>> great = 'Hello ' * 4 + ' \n'

>>> end = 'Goodbye.'

>>> print(great + great + end)


이스케이프 문자

>>> print('\tabc')

abc

>>> print('a\tbc')

a    bc

>>> print('ab\tc')

ab    c

>>> print('I love back slash \\')


\n    개행(줄바꿈)

\t    탭

\r    캐리지 리턴

\0    널(null)

\\    문자 \

\'    단일 인용부호

\"    다중 인용부호


데이터 타입 변환 : str()

- str()함수를 사용하여 데이터 타입을 문자열로 변환 가능

 : int(), float()는 마찬가지로 각각 int와 float로 변환한다.

>>> str(98.6)

'98.6'

>>> str(1.0e4)

'10000.0'

>>> str(True)

'True'


문자열

- 문자열 인덱스(오프셋)

- 문자 추출

- 문자열 자르기 (slicing)

hello world

mystring[0:5] -> 'hello'

mystring[6:11] -> 'world'

mystring[6:] -> 'world'

mystring[:5] -> 'hello'

  : 범위를 지정할 때 시작 경계는 포함되고, 종료 경계는 포함되지 않는다.

- 문자열 자르기 : 음수 인덱스 사용

>>> letters[-3:]

>>> letters[10:-3]

>>> letters[-6:-3]

- 문자열 길이 : len()

  : 문자열의 길이를 잰다.

  : 다른 시퀀스 타입에서도 사용 가능하다.


연습문제

- 사용자 이름을 입력받아 이메일 주소로 만들어주는 프로그래밍

  : input() 함수 사용 : 콘솔로 부터 문장을 입력받는 함수

  1. 아이디를 입려갛라고 메시지를 보내고 사용자 입력으 ㄹ기다린다.

  2. 사용자가 아이디를 입력하면 아이디에 '@python_demo.co.kr' 문자열을 결합한다.

  3. 메일주소를 화면에 출력하면ㅅ 프로그램을 종료한다.

print('input your id')

your_id = input()

print('your email is ' + your_id + '@python_demo.co.kr')


Summary

- 문자열 인덱스(오프셋)를 통해 문자열 내의 각각 문자에 접근할 수 있다.

- 시작과 끝 경계를 주어 문자열을 슬라이싱(자르기)을 할 수 있다.