Data Type(자료형)
변수: 기호 =를 사용하여 만든 것.
a=1에서 a가 변수임.
Function: 독립적으로 사용.
Method: 클래스 내부의 함수.
ex.
sum()vs.a.upper()
type(): 자료형 확인
-
Numbers(숫자형)
-
Arithmetic Operators(산술 연산자)
a ** b = a의 b 제곱
a % b = a를 b로 나누고 나머지 반환.
a // b = a를 b로 나누고 몫 반환.
-
Functions(숫자형 관련 함수)
int(): 객체를 정수로 반환.float(): 객체를 실수로 반환.
-
-
String(문자열)
-
문자열 만들기
'a': 한 줄 내에 들어갈 문자열."a": 한 줄 내에 들어갈 문자열.'''a''': 여러 줄에 걸친 문자열."""a""": 여러 줄에 걸친 문자열.str(a[2]): 문자열로 변경. -
Escape code: 미리 정의해 둔 "문자 조합"
\n: 줄 바꾸기\t: 탭\\: 문자 \\': 문자 ‘r'': 문자열 전체에 대해 이스케이프 코드를 처리하지 않음. -
Indexing과 Slicing
Indexing: "가리킨다"라는 뜻.
Slicing: "잘라낸다"라는 뜻.
형식:
a[1:-1]immutable: 문자열의 요소값은 바꿀 수 있는 값이 아니다. 즉,
a[1]만을 변경하는 것은 불가능. -
Formatting
예시1:
"I eat %d apples" % 3 ⇒ 'I eat 3 apples'예시2:
"I ate %d apples. so I was sick for %s days." % (number, day)%s: 문자열(어떤 형태든 문자열로 바꿈)%d: 정수%f: 실수%%: 문자 %%10s: 전체 길이가 10개인 문자열 공간에서 오른쪽 정렬, 앞의 나머지는 공백.%-10s: 전체 길이가 10개인 문자열 공간에서 왼쪽 정렬, 뒤의 나머지는 공백.%0.4f: 소수점 네 번째 자리까지 표시.%10.4f: 소수점 네 번째 자리까지 표시. 전체 길이가 10개인 문자열 공간에서 오른쪽 정렬, 앞의 나머지는 공백.-
format()
"{0}과 {1}".format(x, y): 0번에 x, 1번에 y를 각각 넣어주기. -
f 문자열 포매팅: Python 3.6부터 가능.
f'나의 이름은 {name}이고, 나이는 내년에 {age+1}이다.'딕셔너리의
d['key']등도 들어갈 수 있음.f'{"hi":<10}': 전체 길이가 10개인 문자열 공간에서 왼쪽 정렬, 뒤의 나머지는 공백.:=^는 가운데 정렬하고, 나머지는 ‘=' 문자로 공백 채우기.
-
-
String Methods(문자열 메서드)
str(): 객체를 문자열로 변환.len(a): 문자열의 길이 반환..count('a'): 문자열 중 문자 a의 개수 반환..find('a'): 문자열 중 문자 a가 처음 나온 위치를 반환, 존재하지 않는다면 -1을 반환..index('a'): 문자열 중 문자 a가 처음 나온 위치를 반환, 존재하지 않는다면 오류 발생.",".join('abcd'): abcd 문자열 각각 사이에 ‘,'를 삽입.리스트나 튜플에도 입력 가능.
.upper()&.lower()&.swapcase(): 대문자, 소문자, 혹은 서로 변경..strip()&.lstrip()&.rstrip(): 문자열의 양옆, 왼쪽, 오른쪽의 한 칸 이상 연속된 공백을 모두 삭제..replace('a', 'b'): a라는 문자를 b로 변경..split(): 값을 기준으로, 값이 없으면 공백을 기준으로 문자열을 나누어 리스트로 변환..isalpha()&.isnumeric()&.isalnum(): 문자열이 알파벳, 숫자, 그 둘로만 구성되어 있는지 검사..startswith(): 문자열이 특정 문자로 시작하는지 판단.
-
-
List(리스트)
-
Indexing과 Slicing
a[0]: 리스트 a의 0자리 요솟값 불러오기.a[-1][1]: 리스트 a의 마지막 요솟값인 리스트의 1자리 요솟값 불러오기. -
리스트의 연산
문자열과 마찬가지로 더하고 곱하기가 가능.
단, 숫자형과 문자열을 더할 수는 없기에 자료 형태를
str()함수 등을 통해 자료형을 일치 시켜줘야 함. -
List Methods(리스트 메서드)
list(): 객체를 리스트로 변환.del 객체: 모든 자료형을 삭제del a[1]등등..append(값): (값)을 리스트 마지막에 추가..sort(): 리스트 요소를 순서대로 정렬..sort(reverse=True): 리스트 요소를 역순으로 정렬..reverse(): 현재 리스트를 뒤집음..index(값): (값)의 위치 값을 반환..insert(a, b): a번째 자리에 b를 삽입..remove(값): 가장 앞자리의 (값)을 제거..pop(): 리스트 마지막 요소를 반환. 혹은 x번째 요소를 반환. 그 요소는 삭제..count(값): 리스트 안의 (값) 개수를 반환..extend([값]): 기존 리스트에 ([값]) 리스트를 뒤에 추가.
-
-
Tuple(튜플)
- 리스트와 유사하지만 튜플은
()로 둘러싸고, 항목 값의 생성, 삭제, 수정이 불가능하다. - 1개의 요소만을 가질 때는 뒤에
(1,)처럼 콤마를 붙여야 한다. - 변화시킬 수 없다는 점만 제외하면 리스트와 동일하므로 인덱싱과 슬라이싱, 더하고 곱하기, 길이 구하기 등은 가능하다.
zip(): 순회 가능한 객체를 인자로 받고, 각 객체가 담고 있는 원소를 튜플의 형태로, 차례로 접근할 수 있는 반복자를 반환.
list나 dict로 만들면 유용.
- 리스트와 유사하지만 튜플은
-
Dictionary(딕셔너리)
-
Ditionary 특징
- 기본 형태는
{Key1:Value1, Key2:Value2} - Key에는 변하지 않는 값을, Value에는 변하는 값과 변하지 않는 값 모두 사용 가능. Key에는 리스트 자료형을 사용할 수 없다.
- 리스트와 튜플, 문자열과 다르게 인덱싱과 슬라이싱은 불가능 하고, Key를 통해 Value를 구하는 방법만이 있다.
- Key가 중복되면 1개를 제외한 나머지 해당 Key 쌍이 무시된다.
- 기본 형태는
-
Ditionary 쌍 추가 및 삭제
a[Key] = Value: 딕셔너리 a에 {Key:Value}를 추가.del a[1]: 딕셔너리 a의 1이라는 Key를 가진 쌍 삭제. -
Value 얻기
Dictionary[Key]: 딕셔너리의 Key에 해당하는 Value를 반환. -
Dictionary Methods(딕셔너리 메서드)
.keys(): 딕셔너리의 Key만을 모아서 dict_keys 객체를 돌려줌..values(): 딕셔너리의 Value만을 모아서 dict_values 객체를 돌려줌..items(): Key와 Value의 쌍을 튜플로 묶은 값을 dict_items 객체로 돌려줌.list()함수를 이용하면 리스트로 반환 가능..clear(): 딕셔너리 안의 모든 요소 삭제. {} 반환..get(Key): Key에 대응되는 Value를 반환.Key가 없으면
a[Key]는 오류를 발생,a.get(Key)함수는 None을 반환..get(Key, x): 딕셔너리 안에 Key가 없으면 x라는 미리 정해 둔 디폴트 값을 대신 가져옴..pop(Key): Key에 대응되는 Value를 반환하고 딕셔너리에서 삭제..pop(Key, x): 딕셔너리 안에 Key가 없으면 x라는 미리 정해 둔 디폴트 값을 대신 가져옴Key **in** Dictionay: 딕셔너리 안에 Key가 있으면 True, 없으면 False 반환.
-
-
Set(집합)
-
집합 자료형 특징
set("Hello") = {‘e', ‘h', ‘l', ‘o'}
set([1, 2, 3]) = {1, 2, 3}
- 집합 자료형은 set 키워드를 사용해 만들 수 있다.
- 중복을 허용하지 않고, 순서가 없다.
- 리스트와 문자열이 들어간다.
-
교집합, 합집합, 차집합
s1 & s2: 집합 s1과 s2의 교집합.s1.intersection(s2): 집합 s1과 s2의 교집합.s1 | s2: 집합 s1과 s2의 합집합.s1.union(s2): 집합 s1과 s2의 합집합.s1 - s2: 집합 s1에서 s2를 뺀 차집합.s1.difference(s2): 집합 s1에서 s2를 뺀 차집합. -
Set Methods(집합 메서드)
.add(4): 1개의 값을 추가..update([4, 5]): 여러 개의 값을 추가..remove(2): 특정 값을 제거.
-
-
Boolean(불)
bool(): 자료형의 참과 거짓 식별-
True
참, 1
1 == 1, 2 > 1
값이 있는 자료형: "python", [1, 2, 3], {‘a':1}
-
False
거짓, 0
1 == 2, 2< 1
비어있는 자료형: "", [], {}
None
-