▶자료형
자료형이란 프로그래밍을 할 때 쓰이는 숫자, 문자열 등 자료 형태로 사용하는 모든 것들을 뜻한다. 프로그램의 기본이자 핵심 단위가 자료형. 종류로는 숫자형, 문자열 자료형, 리스트 자료형, 튜플 자료형, 딕셔너리 자료형, 집합 자료형, 불 자료형, 변수 등이 있다.
▶숫자형(Number)
정수형, 실수형, 8진수(Octal : 0o), 16진수(Hexadecimal : 0x) 등이 있다. 주요 연산자로는 사칙연산을 수행하는 +,-,*,/가 있으며, 이외의 연산자로는 x의 y제곱을 나타낼 때는 x**y, 나눗셈의 나머지를 반환하는 %, 나눗셈의 몫을 반환하는 // 등이 있다.
▶문자열(String)
[1] 문자열을 표현하는 방식 4가지
1
2
3
4
5
6
7
8
|
# 큰따옴표 사용
"I am using Color Scripter"
# 작은따옴표 사용
'I am using Color Scripter'
# 큰따옴표 3개 사용
"""I am using Color Scripter"""
# 작은따옴표 3개 사용
'''I am using Color Scripter'''
|
cs |
[2] 문자열 안에 작은따옴표나 큰 따옴표 포함시키기
1
2
3
4
5
6
7
|
# 문자열에 작은따옴표 포함시키기
"I'm learning Python"
# 문자열에 큰 따옴표 포함시키기
'"I am learning Python" he said'
# 백슬래시(\) 사용
"\"I am learning Python\" he said"
'I\'m learning Python'
|
cs |
[3] 여러 줄 문자열을 변수에 대입
1
2
3
4
5
6
7
|
# 개행기호(\n) 사용
"I am learning Python\nIt's interesting"
# 작은따옴표 또는 큰따옴표 3개 사용
'''I am learning Python
It is interesting'''
"""I am learning Python
It's interesting"""
|
cs |
※ 이스케이프 코드 종류
코드 | 설명 |
\n | 문자열 안에서 개행 |
\t | 문자열 사이에 탭 간격을 줄 때 |
\\ | 문자 \를 있는 그대로 사용할 때 |
\' | 작은 따옴표를 그대로 사용할 때 |
\" | 큰 따옴표를 그대로 사용할 때 |
\r | 캐리지 리턴(줄 바꿈 문자, 현재 커서를 가장 앞으로 이동) |
\f | 폼 피드(줄 바꿈 문자, 현재 커서를 다음줄로 이동) |
\a | 벨 소리(출력할 때 "삑" 소리가 난다.) |
\b | 백 스페이스 |
\000 | NULL 문자 |
[4] 문자열 연산
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
# 문자열 더하기
first = "I am"
second = " learning Python."
# "I am learning Python." 출력
print(first + second)
# 문자열 곱하기
x = "Python"
# "PythonPython" 출력
print(x * 2)
# 문자열 길이 구하기
y = len(x)
# 문자열 길이 출력(6)
print(y)
|
cs |
[5] 문자열 인덱싱과 슬라이싱 : 슬라이싱의 기본적인 형태는 a[시작(이상):끝(미만):간격] 과 같다.
ex) 12345678을 [0:7:2]로 슬라이싱하면, 1357을 출력함.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 문자열 인덱싱
x = "Python"
# h출력(0,1,2,3 : 4번째 글자)
print(x[3])
# n출력(뒤에서부터 세기)
print(x[-1])
# 문자열 슬라이싱
x = "Python"
# "Pyt"출력(끝번호는 포함하지 않음)
print(x[0:3])
# "thon"출력
print(x[2:])
# "Py"출력
print(x[:2])
# "Python"출력
print(x[:])
# "Py","thon" 문자열 나누기
y = x[:2]
z = x[2:]
|
cs |
[6] 문자열 포매팅(Formatting)
1
2
3
4
5
6
7
8
9
10
|
# 숫자 바로 대입
number = 3
"I eat %d apples." % number
"I eat %d apples." % 3
# 문자열 바로 대입
"I eat %s apples." % "five"
# 숫자 문자열 동시에 대입
number1 = 3
number2 = five
"I eat %d apples. I ate %s apples." %(number1, number2)
|
cs |
코드 | 설명 |
%s | 문자열(String) |
%c | 문자 1개(Character) |
%d | 정수(integer) |
%f | 부동소수(floating-point) |
%o | 8진수 |
%x | 16진수 |
%% | Literal % (문자 % 자체) |
※ %s는 자동으로 %뒤의 수를 문자열로 바꾼다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
>>># 포맷 코드를 이용한 정렬
>>>"%10s" % "hi"
' hi'
>>>"%-10sjane." % 'hi'
'hi jane.'
>>># 소수점 표현(소수점 네 번째 자리까지, 그리고 좌측에 공백)
>>>"%10.4f" % 3.42134234
' 3.4213'
>>># format 함수를 사용한 포매팅
>>>"I have {0} dollars.".format(5)
'I have 5 dollars.'
>>>"I have {0} dollars.".format("five")
'I have five dollars.'
>>>"I had {0} dollars. then i had additional {1} dollars.".format(5, "ten")
'I had 5 dollars. then i had additional ten dollars.'
>>>"I had {number1} dollars. then i had additional {number2} dollars.".format(number1=5, number2="ten")
'I had 5 dollars. then i had additional ten dollars.'
>>>"I had {0} dollars. then i had additional {number2} dollars.".format(10, number2=5)
'I had 10 dollars. then i had additional 5 dollars.'
|
cs |
(+) f 문자열 포매팅 (Python 3.6부터)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
# f문자열 포매팅 예시
>>> age = 30
>>> f'내 나이는 내년이면 {age+1}살이 된다.'
# 딕셔너리 활용
>>> d = {'name':'홍길동', 'age':30}
>>> f'내 이름은 {d["name"]}, {d["age"]}살이다.'
'내 이름은 홍길동, 30살이다.'
# 소수점 표현(총자리수 10, 소수점 4자리까지 표현)
>>> y = 3.42134234
>>> f'{y:10.4f}'
' 3.4213'
|
cs |
[7] 문자열 관련 함수
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# 문자 개수 세기
>>> a = "robby"
>>> a.count('b')
2
# 위치 알려주기
>>> a = "I am learning Python"
>>> a.find('a')
2
>>> a.index('a')
2
# 문자열 삽입
>>>",".join(['a', 'b', 'c', 'd'])
'a,b,c,d'
# 소문자, 대문자 전환
>>> a = "hi"
>>> a.upper()
>>> a.lower()
# 왼쪽, 오른쪽, 양쪽 공백 지우기
>>> a.lstrip()
>>> a.rstrip()
>>> a.strip()
# 문자열 바꾸기
>>> a = "Python is interesting"
>>> a.replace("Python", "PHP")
'PHP is interesting'
# 문자열 나누기(리스트로 출력)
>>> a = "Python is interesting"
>>> a.split()
["Python", "is", "interesting"]
|
cs |
'Python' 카테고리의 다른 글
[Python] 대용량 데이터 다루기 (0) | 2022.12.20 |
---|---|
[Python] 파이썬 기초 - 함수 (0) | 2022.11.19 |
[Python] 파이썬 기초 - 제어문 (0) | 2022.11.18 |
[Python] 파이썬 기초 - 자료형2 (리스트, 튜플, 딕셔너리, 집합, 불) (0) | 2022.11.17 |
[Python] 파이썬 기초 연습 (0) | 2022.10.30 |
댓글