ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자료형에 따른 활용법(함수 등) - 문자열
    파이썬 2020. 6. 30. 16:09

    1. 문자열을 만드는 방식

    큰 따옴표( " )로 양쪽 둘러싸기

    작은 따옴표( ' )로 양쪽 둘러싸기

    큰 따옴표( " ) 3개를 연속( """ )으로 써서 둘러싸기

    작은 따옴표 3개를 연속( ''' )으로 써써 양쪽 둘러싸기

     

     

    2. 문자열 안에 작은 따옴표나 큰 따옴표를 포함시키고 싶을 때

    문자열 안에 작은 따옴표 ( ' )를 포함시키고 싶으면 문장을 큰 따옴표( " )로 둘러싼다.

    문자열 안에 큰 따옴표 ( " )를 포함시키고 싶으면 문장을 작은 따옴표( ' )로 둘러싼다.

     

     

    3. 여러 줄인 문자열을 변수에 대입하고 싶을 때

    문장 사이에 \n (역슬래시 + n)을 삽입한다.

    연속으로 작은 따옴표 3개 ( ''')와 큰 따옴표 ( """ ) 3개를 사용한다.

     

     

    4. 이스케이프 코드

    문자열 처리시 사용할 수 있도록 미리 정의해 둔 "문자 조합"이다.

    \n (역슬래시 + n) : 문자열 안에서 줄을 바꿀 때 사용

    \t (역슬래시 + t) : 문자열 사이에 탭 간격을 줄 때 사용

    \\ (역슬래시 두번) : 문자로서 \를 표현할 때

    \' / \" (역슬래시 + 따옴표) : 작은 따옴표( ' ) / 큰 따옴표( " )를 그대로 표현할 때 사용

    \b (역슬래시 + b) : 백스페이스

    \r (역슬래시 + r) : 캐리지 리턴(줄바꿈 문자, 현재 커서를 가장 앞으로 이동)

    \f (역슬래시 + f) : 폼피드(줄바꿈 문자, 현재 커서를 다음 줄로 이동)

    \a (역슬래시 + a) : 벨소리(출력 시 PC 스피커에서 '삑' 소리가 난다)

    \000 (역슬래시 + b) : 널 문자

     

     

    5. 인덱싱과 슬라이싱

    인덱싱이란 문자열 안에 있는 각 요소에 임의의 번호를 매겨서 특정 값을 관리하고 쓰기 편하게 만드는 방법. 문자열을 인덱싱할 경우 0부터 시작한다. 

     

    슬라이싱이란 문자열 안에서 원하는 요소만 잘라내서 사용할 수 있도록 하는 방법을 말한다. 슬라이싱은 문자열 뿐 아니라 튜플과 리스트에서도 사용이 가능하다.

     

    ※ 슬라이싱 주의사항

    슬라이싱을 할 땐 숫자를 인덱스 형식으로 세어준다. 예를 들면 다음과 같다.

    >>> a = (1,2,3,4,5)
    
    >>> a[0] = 1
    >>> a[1] = 2
    >>> a[2] = 3
    >>> a[3] = 4
    >>> a[4] = 5

    하지만 슬라이싱을 할 때는 슬라이싱의 뒤에 오는 숫자에서 -1을 한 인덱스넘버가 해당 결과값의 마지막에 온다. 예를 들면 다음과 같다.

    >>> a = (2,3,4,5,6)
    
    >>> a[0:3]
    2,3,4     #슬라이싱해준 최종 숫자에서 -1을 한 인덱스 넘버가 결과값의 끝에 온다.
              #즉 a[0:3]은 인덱스 넘버 0,1,2를 결과값으로 나왔다. 
    
    >>> a[0:4] #슬라이싱 a[0:4]다. 하지만 결과값은 여기서 -1을하고 이것을 인덱스에 반영한다.
    2,3,4,5    #인덱스 넘버 0,1,2,3 값인 2,3,4,5가 결과값으로 나왔다.
    
    >>> a[0:5] #슬라이싱 a[0:5]다. 하지만 결과값은 여기서 -1을 하고 이것을 인덱스에 반영한다.
    1,2,3,4,5  #인덱스 넘버 0,1,2,3 값인 2,3,4,5가 결과값으로 나왔다.

     

     

    6. 문자열 포매팅

    문자열 포맷이란 문자열에 이미 입력된 문자를 외부에서 바꿔주는 것을 의미한다.

    문자열 포맷은 숫자, 문자열 등을 나타낼 수 있고 2개 이상의 값을 넣을 수 있다.

    * "I eat %s apples." % "five"

    문자열 포맷코드는 다음과 같다.

    %s 문자열 (String)

    %c 문자 1개(character)

    %d 정수 (Interger)

    %f 부동소수 (floating-point)

    %o 8진수

    %x 16진수

    %% 리터럴 %

     

    format 함수를 사용하면 이렇게 포매팅을 할 수도 있다.

    * 문자열 + { } + 문자열 + .format ( )

    문자 열 사이에 문자를 넣고 싶은 곳에 { } 를 넣고, 넣고 싶은 데이터는 .format( )에서 ( )에 넣는다.

     

     

    7. 문자열 관련 함수 (x는 변수, y는 변수에 연결된 문자열)

    문자열 길이 구하기 : len(x )

    변수의 전체 문자열의 길이를 구하여 돌려준다.

    >>> a = "python is good"
    >>> len(a)
    14

     

    문자 개수 세기 : x.count( y )

    x변수에서 y문자열의 갯수를 찾아서 돌려준다.

    >>> a = "python is good"
    >>> a.count('p')
    1
    
    >>> a = "python is good"
    >>> a.count('o')
    3

     

    위치 알려주기 : x.find( y )

    문자열을 입력하면 해당 변수의 문자열에서 같은 문자열의 위치를 인덱스 값으로 돌려준다.

    * index와 달리 맞는 문자열이 없으면 -1을 반환한다.

    >>> a = "python is good"
    >>> a.find('p')
    0

     

    위치 알려주기 2 : x.index( y )

    문자열을 입력하면 해당 변수의 문자열에서 같은 문자열의 위치를 인덱스 값으로 돌려준다.

    * 맞는 문자열이 없으면 오류가 발생한다.

    >>> a = "python is good"
    >>> a.index('p')
    0

     

    소문자를 대문자로 바꾸기 : x.upper( )

    소문자를 대문자로 돌려준다.

    >>> a = "python is good"
    >>> a.upper( )
    "PYTHON IS GOOD"

     

    대문자를 소문자로 바꾸기 : x.lower( )

    대문자를 소문자로 돌려준다.

    >>> a = "PYTHON IS GOOD"
    >>> a.lower( )
    "python is good"

     

    왼쪽 공백 지우기 : x.lstrip()

    왼쪽 공백을 지우고 문자열로 다시 되돌려준다.

    >>> a = " python "
    >>> a.lstrip( )
    "python "

     

    오른쪽 공백 지우기 : x.rstrip()

    오른쪽의 공백을 지우고 문자열로 다시 되돌려준다.

    >>> a = " python "
    >>> a.rstrip( )
    " python"

     

    양쪽 공백 지우기 : x.strip()

    문자열의 양쪽 공백을 지우고 문자열로 다시 되돌려준다.

    >>> a = " python "
    >>> a.strip( )
    "python"

     

    문자열 삽입 : "y". join( x )

    문자열의 사이에 특정 문자를 삽입한다.

    * 특정 문자를 입력하지 않을 경우 문자열을 그대로 반환한다.

    * 리스트에 join함수를 쓸 경우 리스트의 각 요소들을 하나의 문자열로 합쳐 반환한다.

    * 튜플에 join함수를 쓸 경우 리스트의 각 요소들을 하나의 문자열로 합쳐 반환한다.

    * 공백을 입력한 후 join함수를 쓸 경우 튜플, 리스트는 공백을 기준으로 하나의 문자열로 합쳐 반환한다.

    >>> a="python is good"
    >>> "#".join(a)
    'p#y#t#h#o#n# #i#s# #g#o#o#d'
    
    >>> a="python is good"
    >>> "".join(a)
    'python is good'
    
    >>> a=["python", "is", "good"]
    >>> "".join(a)
    'pythonisgood'
    
    >>> a=("python", "is", "good")
    >>> "".join(a)
    'pythonisgood'
    
    >>> a=("python", "is", "good")
    >>> " ".join(a)
    'python is good'

     

    문자열 바꾸기 : x.replace("y", "z")

    문자열을 바꿔준다.

    >>> a = "python is good"
    >>> a.replace("python", "coffee")
    "coffee is good"

     

    문자열 나누기 : x.split( "y" )

    문자열을 기준에 맞춰 나누어 리스트로 반환한다.

    * y자리에 문자를 삽입하면 그 기준에 맞춰서 나눠서 리스트로 반환한다.

    * 없을 경우 스페이스바 등의 공백을 자동으로 확인 후 나누어 반환한다.

    * 스페이스바 등 공백이 없을 경우 그냥 문자열을 리스트에 넣어서 반환다.

    >>> a = "python is good"
    >>> a.split()
    ["python", "is", "good"]
    
    >>> a = "a:b:c:d"
    >>> a.split()
    ['a:b:c:d']
    
    >>> a = "a:b:c:d"
    >>> a.split(":")
    ['a', 'b', 'c', 'd']

     

Designed by Tistory.