본문 바로가기
데이터 분석

파이썬(Python) 데이터 타입 이해하기 - (2/2)

by 명석한 쭌이 2022. 10. 3.

1) 문자열 부분 출력하기 (인덱싱, 슬라이싱)

  • 인덱싱(Indexing)은 문자열 중 특정 순서에 해당하는 문자열을 출력할 때 사용한다. "[ ]"(대괄호) 안에 숫자를 입력하며, 0부터 시작한다
    a = "동해물과 백두산이 마르고 닳도록"
    print(a[6])
  •  띄어쓰기도 문자열로 인식하므로 주의
  • 슬라이싱(Slicing) : 일정 범위의 문자열을 출력할 때 사용
a = "내가그린기린그림은못그린기린그림이고"
print(a[:4])
print(a[6:10])
print(a[-2:])

내가그린

그림은못

이고

  • 특정 간격으로 글자를 출력할 때에도 사용 가능하다.
a = "간장된장공장장"
print(a[1::2])

장장장

2) 문자열 삽입하기 (포맷팅, format)

  • 특정 위치에 원하는 데이터를 입력할 때 사용한다.
  • % 포맷팅 :원하는 위치에 원하는 데이터를 넣을 때 사용한다.
    A = 95
    B = "2등급"
    a = "나는 작년 수능에서 평균 %s점을 받았고, %s을 받았다" % (A , B)
    print(a)
    나는 작년 수능에서 평균 95점을 받았고, 2등급을 받았다
  •  TIP : 데이터 타입에 따라 입력하는 방식에 차이가 있으나, "%s"를 사용하면 입력하고자 하는 데이터를 문자열로 바꿔주면서 입력이 가능하다.

format 함수 : 입력하고자 하는 데이터를 "{ }"(중괄호) 위치에 입력할 때 사용한다.

※ 변수의 이름(A)을 지정할 경우, "{A}". format(A = ) 형태로 입력해야 하며,

"{ }"(중괄호)의 순서에 상관없이 자유롭게 입력이 가능하다.

 

A = "사랑"
B = "우정"
a = "결국 {friendship}보다 {love}이야". format(love = A, friendship = B)
print(a)

결국 우정보다 사랑이야

 

  • F-string 문법 : format 함수를 쓰지 않고 지정한 변수를 해당 위치에 입력하고자 할 때 사용한다.
    A = "북한"
    B = "남침"
    a = f"6.25 전쟁은 {A}의 {B}으로 시작된 동족상잔의 비극이다"
    print(a)
     
  •  6.25 전쟁은 북한의 남침으로 시작된 동족상잔의 비극이다.

 

3) 문자열 개수 세기 (len, count) & 위치 찾기 (find, index)

  • len 함수 : 문자열의 전체 개수를 알고자 할 때 사용한다.13
a = "아기 상어 뚜 루루 뚜루"
len(a)

13

  • count 함수 : 문자열 내 특정 문자열의 개수를 찾고자 할 때 사용한다.
    = "간장된장공장장"
    print(a.count("장"))
    4
  • find / index 함수 : 문자열 내 특정 문자열의 위치를 알고자 할 때 사용한다.1
a = "고트프리트 폰 슈트라스부르크"
b = "국제연합국제아동긴급기금"
print(a.find("트"))
print(b.index("국"))

1

0

  • find / index 함수는 범위 내에서 처음 등장하는 문자열의 위치를 알 수 있다.
a = "고트프리트 폰 슈트라스부르크"
b = "국제연합국제아동긴급기금"
print(a.find("트",210))
print(b.index("국",18))

4

4

 

4) 문자열 수정하기 (join, strip, replace, split)

join 함수 : 문자열 내에 특정 문자를 삽입할 떄 사용한다.

a = "코딩정말쉽습니다"
b = "."
print(b.join(a, 2))

코.딩.정.말.쉽.습.니.다

 

 
  • strip 함수 : 문자열 내 공백을 지울 때 사용한다.
a = "       띄어쓰기 자제 좀...       "
print(a.strip())

띄어쓰기 자제 좀...

 

  • replace 함수 : 문자열 내 특정 문자열을 다른 문자열로 바꿀 때 사용한다.
a = "인생은 짧고 예술은 길다"
b = "예술"
c = "의술"
print(a.replace("예술""의술"))

인생은 짧고 의술은 길다

 
# 문제 1) a = "독도는 일본의 영토이다." 이다. "독도는 대한민국의 영토이다." 로 문장을 올바르게 완성하시오.
a = "다케시마는 일본의 영토이다."

print(a.replace('다케시마','독도').replace('일본','대한민국'))
 
독도는 대한민국의 영토이다.

 

 

  • split 함수 : 문자열을 특정 문자열에 맞춰 나눌 때 사용한다.
    a = "학교 종이 땡떙떙"
    print(a.split())
    ['학교', '종이', '땡떙떙']