TanzDev

TIL 20 (파이썬 시작 2) 본문

기록보드/TIL

TIL 20 (파이썬 시작 2)

Tanz-dev 2024. 2. 20. 17:10

금일도 파이썬 공부를 진행할 예정이다.

문자열부터 최대한 공부해보도록 해보자

 

문자열 연산하기

  • 문자열 더해서 연결하기
    출력 : Python is Fun!
head = "Python"
tail = " is Fun!"

print (head + tail)
  • 문자열 곱하기
    출력 : pythonpython
a = "python"

print(a * 2)

 

문자열 길이 구하기문자열 인덱싱과 슬라이싱

a = "Life is too short, You need Python"
# 인덱스는 L이 0으로 시작해서 0,1,2,3... 순으로 진행된다.

print(a[3]) # 0, 1, 2, 3번째의 순서이기때문에 e가 출력된다.
a = "Life is too short, You need Python"
print(a[0]) # 0번째 텍스트 L
print(a[12]) # 12번째 텍스트 s
print(a[-1]) # 끝의 문자 시작에서 1번째 n
  • 문자열 슬라이싱 : 어디부터 어디까지 범위를 지정해서 잘라내는 기능

a = "Life is too short, You need Python"
b = a[0] + a[1] + a[2] + a[3] # 0,1,2,3 이 불러와지므로 Life가 출력
print(b)

- 하나씩 끌어와 Life를 출력할수도있고, 

a = "Life is too short, You need Python"
b = a[0:4] # 0,1,2,3 이 불러와지므로 Life가 출력
print(b)

- 같은방식으로 사용해줄 수 있다.

a = "Life is too short, You need Python"
b = a[::-1] # 끝에서부터 출력되어 나옴
print(b)
# nohtyP deen uoY ,trohs oot si efiL
  • 슬라이싱으로 문자열 나누기
a = "20230331Rainy"
date = a[:8] # a[:8]은 a[8]을 포함하지 않고
weather = a[8:] # a[8:]은 a[8]을 포함하기 때문에 8을 기준으로 나눌 수 있다.
print(date) # 20230331
print(weather) # Rainy 가 출력된다.

 

a = "Pithon"
a[:1] # 1미만이기때문에 P가 출력될것이고
a[2:] # 2이상이기때문에 thon이 출력된다.

print(a[:1] + 'y' + a[2:]) # 그 사이에 y를 넣어줌으로써 Python이 출력된다.

 

문자열 포매팅 - 문자열 안에 특정한 값을 바꿔야 할 경우

% - Decimal

 

  • 숫자 대입하기(숫자만 변경해서 계속 쓸 수 있다.)
a = "I eat %d apples." % 3 # %안에 3을 대입해준다. 추후 리스트로도 활용할 수 있을것.
print(a) # I eat 3 apples. 가 출력된다.
  • 문자열 대입하기
a = "I eat %s apples." % "Five" # %안에 Five를 대입해준다. %s는 string의 약자
print(a) # I eat Five apples. 가 출력된다.
  • 2개 이상의 값 넣기
number = 5
day = "Three"
text = "I ate %d apples. so I was sick for %s days." % (number, day)
# 숫자와 문자열을 같이 대입해 줄 수 있다.
print(text) #I ate 5 apples. so I was sick for Three days. 출력

 

문자열 포맷 코드

점프투파이썬 2023

포맷 코드와 숫자 함께 사용하기

  • 소수점 표현하기
a = "%0.4f" % 3.14159265 # 소수점 넷째자리까지만 표현해줘
print(a) # 3.1416 출력

format 함수를 사용한 포매팅

  • 숫자로 포매팅 하기
a = "I eat {0} apples".format(3) # .format(3)이 {0}에 대입됨
print(a) # I eat 3 apples 출력
  • 문자열로 포매팅 하기
a = "I eat {0} apples".format("five") # .format("five")이 {0}에 대입됨
print(a) # I eat five apples 출력
  • 2개 이상의 값 넣기 : 인덱스에 맞게 넣어줘야됨 , {0},{1}이 아니라 문자열로도 대입가능
number = 10
day = "three"
a = "I ate {0} apples. so I was sick for {1} days.".format(number, day)
# .format에 있는 순서대로 {0}, {1}에 들어가게 됨
print(a) # I ate 10 apples. so I was sick for three days. 출력

 

f 문자열 포매팅 : 파이썬 3.6버전 이상부터 사용가능

name = '홍길동'
age = 30
a = f'나의 이름은 {name}입니다. 나이는 {age}입니다.'
# {}안에 변수를 넣어 포매팅이 가능하다.
print(a) #나의 이름은 홍길동입니다. 나이는 30입니다.

 

- 변수 안에 사칙연산이 가능하다.

 

문자열 관련 함수들 (문자열 내장 함수)

 

문자 개수 세기 - count

a = "hobby"

print(a.count('b')) # b의 개수를 세어준다. 2개이므로 출력은 2가 된다.

 

위치 알려주기 - find

a = "Python is the best choice"

print(a.find('b')) #index 14번째에 위치하므로 14가 출력된다
print(a.find('k')) #index에 존재하지않으므로 -1이 출력된다.

 

문자열 삽입 - join

a = ",".join('abcd') # abcd에 , 를 만들어준다.
print (a) #a,b,c,d 출력

 

문자열 바꾸기 - replace

a = "Life is too short" # 문자열을 먼저 작성해주고
print(a.replace("Life", "your leg")) # replace (변경전 , 변경후)
# 출력 your leg is too short

 

문자열 나누기 - split

a = "Life is too short"
print(a.split()) # 띄워쓰기를 기준으로 문자열로 나누어준다.
# 출력 : ['Life', 'is', 'too', 'short']
b = "a:b:c:d"
print(b.split(':')) # :를 기준으로 문자열을 나누어준다
# 출력 ['a','b','c','d']

 

'기록보드 > TIL' 카테고리의 다른 글

TIL 22 (파이썬 제어문)  (1) 2024.02.22
TIL 21 (자료형 종료)  (1) 2024.02.21
TIL 19 (파이썬 시작)  (1) 2024.02.19
TIL 18 (분야찾기)  (0) 2024.02.18
TIL 17 (HTML CODECADEMY)  (0) 2024.02.18