

숫자형
📌 숫자형

문자열
📌 문자열 자료형
[ 문자열 만들기 ]
"Hello World"
'Hello World'
"""Hello World"""
'''Hello World'''
📌 이스케이프 코드 : 프로그래밍 시 사용할 수 있도록 미리 정의해 둔 '문자 조합'

📌 문자열 연산 : 문자열 + 문자열 또는 문자열 * 숫자

📌 문자열 길이 : len() 함수 사용

📌 문자열 인덱싱

📌 문자열 슬라이싱

📌 문자열 포매팅
# 숫자 입력 %d : decimal
a = "a : 문자열 %d 포매팅" % 10
print(a)
# 문자 입력 %s : string
b = "b : 문자열 %s 포매팅" % "test"
print(b)
# 변수 입력 : 자료형 맞춰서
text = "good"
c = "c : 문자열 %s 포매팅" % text
print(c)
# 여러 개 입력
one = "first"
two = "second"
d = "d : 문자열 %s 포매팅 %s" % (one, two)
print(d)


📌 포맷 코드와 숫자 함께 사용해보기
# %10s : 전체 길이가 10인 문자열 공간에서 값을 오른쪽으로 정렬하고 나머지는 공백으로 채운다.
a = "%10s" % "py"
print(a)
# %-10s : 전체 길이가 10인 문자열 공간에서 값을 왼쪽으로 정렬하고 나머지는 공백으로 채운다.
b = "%-10sthon" % "py" # py + 공백*8 + thon
print(b)
# 소수점 두 자리 까지만 나타내기
c = "%0.2f" % 1.23456789 # %.2f 도 동일
print(c)
# 소수점 두 자리 까지만 표시하고 전체 길이가 10개인 문자열 공간에서 우측 정렬
d = "%10.2f" % 1.23456789
print(d)

📌 format 함수
# .format 함수 내 값을 index로 바인딩
a = "파이썬 {0} 공부중 {1} 다한다.".format("열심히", "최선을")
print(a)
# 순서 변경 가능
b = "파이썬 {1} 공부중 {0} 다한다.".format("열심히", "최선을")
print(b)
# 변수 대입 가능
number = 5
text = "파이썬"
c = "나는 지금 {0}개월 간 {1} 공부를 하고 있다.".format(number, text)
print(c)
# 변수명 직접 대입 가능
d = "나는 지금 {number}개월 간 {text} 공부를 하고 있다.".format(number = 1, text = "열심히")
print(d)
# 혼용 가능
e = "나는 지금 {0}개월 간 {text} 공부를 하고 있다.".format(2, text = "아무도 모르게")
print(e)
# 왼쪽 정렬
f = "{0:<10}".format("code")
print(f)
# 오른쪽 정렬
g = "{0:>10}".format("code")
print(g)
# 가운데 정렬
h = "{0:^10}".format("code")
print(h)
# 정렬 후 공백 란에 문자 채우기
i = "{0:$^10}".format("code")
print(i)
# 소수점 5자리까지만 표현하기
floatNum = 1.23456789
j = "{0:.5f}".format(floatNum)
print(j)
k = "{0:10.5f}".format(floatNum)
print(k)
# {}를 특수 기호로 쓸 때는 두 개씩 입력한다.
l = "{{ and }}".format()
print(l)

📌 f 문자열 포매팅 : 문자열 앞에 f 접두사를 붙임. 파이썬 3.6 버전 부터 사용 가능
# f 접두사로 변수 바인딩
name = '멋쟁이'
age = 30
a = f'내 이름은 {name}이고 나이는 {age}살 입니다.'
print(a)
# 중괄호 안에서는 연산이 가능
b = f'내 이름은 {name}이고 나이는 {age + 1}살 입니다.'
print(b)
c = f'내 이름은 {name}이고 나이는 {age * 2}살 입니다.'
print(c)
# 정렬도 가능
d = f'{"code":<10}'
print(d)
e = f'{"code":>10}'
print(e)
f = f'{"code":^10}'
print(f)
# 공백 채우기
g = f'{"code":&<10}'
print(g)
# 소수점 표현 & 총 자리 수 맞추기
number = 1.23456789
h = f'{number:10.3f}'
print(h)
# {} 문자 그대로 표시하기
i = f'{{ okay }}'
print(i)
# f 문자열을 사용하여 금액에 콤마(,) 삽입하기
j = f"이 물건의 가격은 {150000:,}원 입니다"
print(j)

📌 문자열 관련 함수
# 문자 개수 세기 count
str = "welcome"
a = str.count('e')
print(a) # 2
# 문자열 위치 find : index 찾아줌, 없으면 -1
text = "Python Study Group"
b = text.find('u')
print(b) # 9
# 문자열 위치 index : index 찾아줌, 없으면 오류 발생
c = text.index('u')
print(c) # 9
# 문자열 삽입 join : 각 문자 사이에 문자열 삽입
d = ",".join('hello')
print(d) # h,e,l,l,o
e = ", ".join('hello')
print(e) # h, e, l, l, o
# join 함수는 리스트나 튜플도 사용할 수 있다.
f = ",".join(['AB', 'CD', 'EF', 'GH'])
print(f) # AB,CD,EF,GH
# 소문자 -> 대문자 upper
language = "korean"
g = language.upper()
print(g) # KOREAN
# 대문자 -> 소문자 lower
lang = "koREan"
h = lang.lower()
print(h) # korean
# 왼쪽 공백 지우기 lstrip
stripText = " okay "
i = stripText.lstrip()
print(i) # okay
# 오른쪽 공백 지우기 rstrip
j = stripText.rstrip()
print(j) # okay
# 양쪽 공백 지우기 strip
k = stripText.strip()
print(k) # okay
# 문자열 바꾸기 replace
changeText = "어느날 갑자기 시작하게 됐습니다."
l = changeText.replace("시작", "종료")
print(l) # 어느날 갑자기 종료하게 됐습니다.
# 문자열 나누기 split
m = changeText.split()
print(m) # ['어느날', '갑자기', '시작하게', '됐습니다.']
n = "a$b$c$d"
print(n.split('$')) # ['a', 'b', 'c', 'd']
# 문자열이 알파벳으로만 구성되어 있는지 확인 isalpha : 공백도 false
# 문자열이 숫자로만 구성되어 있는 지 확인 isdigit : 공백도 false
# 문자열이 특정 문자열로 시작/종료 하는 지 확인 startswith/endswith
리스트
📌 리스트
# 리스트 : 대괄호 안에 각 요소들을 넣고 콤마로 구분
list = [1, 2, 3, 4, 5]
# 비어있는 리스트는 list() 또는 [] 로 생성 가능
empty = list()
print(empty) # []
empty1 = []
print(empty1) # []
# 파이썬의 리스트는 자료형 구분 없이 다 담을 수 있다.
list1 = [1, 2, 'a', 'b']
list2 = [1, 2, 3, ['a', 'b', 'c']]
print(list2[-1][1]) # b
list3 = [1, "code", 3, ['a', 'b', 'c']]
print(list3[1][2]) # d (문자열은 인덱싱이 되니까)
📌 리스트 슬라이싱, 연산, 길이
# 리스트 슬라이싱
a = [1, 2, 3, 4, 5]
print(a[0::2]) # [1, 3, 5]
# 리스트 연산
calc1 = [1, 2, 3]
calc2 = [4, 5, 6]
print(calc1 + calc2) # [1, 2, 3, 4, 5, 6]
print(calc1 * 3) # [1, 2, 3, 1, 2, 3, 1, 2, 3]
# 리스트 길이 len()
lenlist = [1,2,3,4,5]
print(len(lenlist)) # 5
📌 리스트 요소 수정, 삭제
# 리스트 수정
a = [1, 2, 3, 4, 5, 6, 7, 8]
a[2] = 9
print(a) # [1, 2, 9, 4, 5, 6, 7, 8]
# 리스트 요소 삭제 : del 함수
del a[1]
print(a) # [1, 9, 4, 5, 6, 7, 8]
del a[2:]
print(a) # [1, 9]
📌 리스트 관련 함수
# 리스트에 요소 추가 append : 어떤 자료형이든 추가 가능
a = [1, 2, 3, 4, 5, 6, 7, 8]
a.append([9, 10])
print(a) # [1, 2, 3, 4, 5, 6, 7, 8, [9, 10]]
# 리스트 정렬 sort : 순서대로 정렬
b = [1, 3, 5, 4, 2, 6, 7, 8]
b.sort()
print(b) # [1, 2, 3, 4, 5, 6, 7, 8]
c = ['a', 'c', 'b']
c.sort()
print(c) # ['a', 'b', 'c']
# 리스트 뒤집기 reverse : 현재 리스트 상태에서 거꾸로 뒤집어 줌
d = ['a', 'c', 'b']
d.reverse()
print(d) # ['b', 'c', 'a']
# 리스트 순서대로 뒤집기 : sort 후 reverse 하면 되겠다 !
# 위치 찾기 index : 없으면 오류 발생
e = [1, 2, 3, 4, 5, 6, 7, 8]
print(e.index(4)) # 3
# 리스트 원하는 위치에 요소 삽입 insert
f = [1, 2, 3, 4]
f.insert(1, 5)
print(f) # [1, 5, 2, 3, 4]
# 리스트에서 첫 번째로 일치하는 요소만 삭제 remove
g = [1, 2, 3, 4, 3, 3]
g.remove(3)
print(g) # [1, 2, 4, 3, 3]
# 리스트 요소 끄집어 내기 pop : 끄집어 낸 요소 확인 가능
h = [1, 2, 3, 4]
print(h.pop()) # 4 (지정하지 않으면 맨 마지막 요소)
print(h) # [1, 2, 3]
i = [1, 2, 3, 4]
print(i.pop(2)) # 3 (인덱스 지정해서 해당 위치 요소 끄집어 낼 수 있음)
print(i) # [1, 2, 4]
# 리스트 요소 개수 세기 count
j = [1, 2, 3, 4, 3, 2, 3, 3]
print(j.count(3)) # 4
# 리스트 확장 extend : list += [4, 5]와 동일
k = [1, 2]
k.extend([3, 4])
print(k) # [1, 2, 3, 4]
'Language > Python' 카테고리의 다른 글
| [Python] 변수 : 변수명 규칙, 변수 (8) | 2025.08.17 |
|---|---|
| [Python] 파이썬 자료형 : 튜플 자료형, 딕셔너리 자료형, 집합 자료형, 불 자료형 (6) | 2025.08.17 |
| Visual Studio Code 파이썬 환경 설정 (VSCode) (2) | 2025.08.16 |
| Python 실행해보기 (REPL, IDLE, CMD) (2) | 2025.08.16 |
| Python 다운로드 (4) | 2025.08.15 |