자료 구조형태
리스트 : 값을 순서대로 저장 / 추가 삭제 가능
튜플 : 값과 길이가 고정
딕셔너리 : key value로 구성
집합 : 중복 불가
튜플
길이와 값이 고정되어 있어,
리스트와 다르게 배열의 변경이 불가능하다
ex) a=(1,2,3)
list ex) b=[1,2,3]
t1=(1,2,'a','b')
# t1[0] = 'c' # 튜플이기에 변경이 안된다며 오류가 뜬다
print(t1[0:2])
t2=(3,4)
#튜플의 연산
print(t1+t2)
print(t1*3)
a = (1,2) # a에 값을 할당
a = a * 3 # 튜플의 곱
print(a)
딕셔너리(dictionary)
키(key)와 값(value) 쌍(pair)으로 이루어진 자료형이며
key를 통해 value를 얻는 목적으로 사용한다
서버에서 JSON 형태로 응답이 주로 들어온다
※키 값은 겹칠 수 없다.
ex) Hash map(JAVA) Object(JAVAscript) JSON
#dictionary 기본 형태
dic = {'name':'Eric','age':15} #이름(key)<->Eric(value) 나이(key)<->15(value)
print(dic['name'])
a = {1: 'a'} #기본 딕셔너리 선언
a['name'] = "익명" # 딕셔너리에 key와 value 추가시
del a['name']#딕셔너리에서 key값읈 삭제하여 구성요소를 제거한다
print(a)
#딕셔너리에서 key를 사용해 Value 얻기
grade = {'pey':10, 'julliet':99}
print(grade['pey']) #삭제와 마찬기지로 출력할때 key값으로 출력
print(grade['julliet'])
b={1:'a', 1:'b'}
print(b)#{1:'b'} key가 중복되면마지막 키와 벨류만 남게된다
b={1:'a', 2:'b'}
print(b)
# t1=(1,2,'a','b')
# # t1[0] = 'c' # 튜플이기에 변경이 안된다며 오류가 뜬다
# print(t1[0:2])
# t2=(3,4)
# #튜플의 연산
# print(t1+t2)
# print(t1*3)
# a = (1,2) # a에 값을 할당
# a = a * 3 # 튜플의 곱
# print(a)
#dictionary 기본 형태
# dic = {'name':'Eric','age':15} #이름(key)<->Eric(value) 나이(key)<->15(value)
# print(dic['name'])
# a = {1: 'a'} #기본 딕셔너리 선언
# a['name'] = "익명" # 딕셔너리에 key와 value 추가시
# del a['name']#딕셔너리에서 key값읈 삭제하여 구성요소를 제거한다
# print(a)
# #딕셔너리에서 key를 사용해 Value 얻기
# grade = {'pey':10, 'julliet':99}
# print(grade['pey']) #삭제와 마찬기지로 출력할때 key값으로 출력
# print(grade['julliet'])
# b={1:'a', 1:'b'}
# print(b)#{1:'b'} key가 중복되면마지막 키와 벨류만 남게된다
# b={1:'a', 2:'b'}
# print(b)
a= {1: '윤대협', 2: '이정환', 3: '정우성'}
print(a.keys()) #key만 따로 뽑아 출력가능
print(a.values()) #value만 따로 뽑아 출력 가능
print(a.items()) # 튜플 형태로 key, value 둘다 출력
for k in a.keys(): #k에 keys를 담아 출력
print(k)
for v in a.values(): #v에 value를 담아 출력
print(v)
for v, k in a.items():# key value 를 각각 v k에 담아 출력
print(v,k)
print(a[2])
print(a.get(3))
print(a.get(4,'없음'))#비어있는 key값을 출력해도 오류가 생기지 않는다
#딕셔너리 삭제(clear)
a.clear()
print(a)
a= {1:"새우깡",2:"홈런볼",3:"치토스"}
print(4 in a)#boolean 형 반환
집합 자료형
중복이 허용되지 않는 자료형.
집합에 관련된 것들을 쉽게 처리하기 위해 만들어진 자료형이다
순서가 존재하지 않는다(Unordered)
#집합 자료형
s2 = set([4,5,6]) #선언하는 두가지 방법
s1 = {1,2,3}
print(type(s1))
print(s2)
l = [1,2,2,3,3] # 집합은 중복허용이 안됨
print(l) #중복제거가 안된 모습
newList = list(set(l)) # 집합형 으로 변환하여
print(newList) #중복을 제거하여 출력 가능
s3 = set("hello")
print(s3)#문자열도 중복은 제거되서 순서가 없이 나온다
# 집합의 연산
s1 = set([1,2,3,4,5,6])
s2 = set([4,5,6,7,8,9])
print(s1 & s2) #교집합 구하기
print(s1.intersection(s2))#같은결과
s3 = set([1,2,3,4,5,6])
s4 = set([4,5,6,7,8,9])
print(s3 | s4) #합집합 구하기
print(s3.union(s4))#같은결과
print(s1-s2)#차집합
print(s2.difference(s1))#같은 결과
s1.add(7)#s1에 7추가
print(s1)
s1.update([8,9])#여러개 추가
print(s1)
s1.remove(9)#값 제거
print(s1)
boolean
조건문 또는 반복문에서 주로 사용하는 자료형
ex) a= true
if true: print(a)
ex) while True:
a+=1
자료형의 참과 거짓
값 | 참 or 거짓 |
"python" | 참 |
"" | 거짓 |
[1,2,3] | 참 |
[] | 거짓 |
() | 거짓 |
{} | 거짓 |
1 | 참 |
0 | 거짓 |
None | 거짓 |
bool
a= True
b= False
print(a)
print(type(a))
print(b)
print(type(b))
a=[1,2,3,4]
if a: # a가 참이라 아래 문장 실행
print(a)
print()
while a: #a 가 트루기때문에 아래 문장들이 실행
a.pop() # 반복문에서 배열을 하나하나 지움
print(a)
'코딩 테스트 준비 > Python 이론' 카테고리의 다른 글
파이썬 이론(반복문) (0) | 2023.02.25 |
---|---|
파이썬 이론(조건문) (0) | 2023.02.25 |
파이썬 이론(변수) (0) | 2023.02.25 |
파이썬 이론(인덱스) (0) | 2023.02.24 |
파이썬 이론(자료형) (0) | 2023.02.24 |
댓글