NOW OR NEVER
[Python] 6. Python 데이터 타입(자료형) Dictionary와 Set 본문
파이썬 자료구조(dictionary, set)
1. dictionary 특징
- 순서 없음(순서와 상관없이 출력 이루어짐), 중복 안됨, 수정 가능, 삭제 가능
- key(가져오고자 하는 정보, 중복 안됨), value(값, 중복 가능) 형태(json을 의미하는 건 아니지만 비슷 ex)MogoDB) : key를 가지고 value 조회
- key : 숫자로 하는 경우 별로 없음 , 찾고자 하는 의미있는 단어로 구성함
- 리스트, 튜플, 복소수 등 모든 데이터 타입 삽입 가능 그래서 매우 유용한 데이터 자료 구조
- item: key, value의 한쌍
- 크롤링 할 때 활용
- 출력 print
- 데이터 출력시 안전하게 조회하기 위해 print(딕셔너리.get(‘key이름’)) 사용하는 것이 좋음
- 키를 가진 값을 가져와서 그것이 리스트일 때 슬라이싱도 가능
- print(2 in b) :2가 b라는 딕셔너리에 있는지 확인
- print(‘name2’ not in a): a라는 딕셔너리 안에 name2라는 key가 없는지 확인
2. dictionary 추가
- key와 value를 추가하는 것
- 딕셔너리이름[‘추가할 key’]=추가할 값
- key 리스트 출력 : print(딕셔너리이름.keys())
- value 리스트 출력: print(딕셔너리 이름.values())
3. 집합(set) 특징
- 수치계산, 과학 연산, 데이터 분석 등에 많이 활용
- 주로 내부적으로 머신러닝 등의 오픈소스, 케라스에 많이 쓰임
- 순서가 없고 중복 허용하지 않는다. 그래서 데이터 반복되어도 한 개만 출력
- 주로 형변환을 해서 사용한다.
- 변수=set([데이터,데이터…])으로 선언
- 수학시간 집합을 생각하면 됨
- 출력
- print(s1.intersection(s2)) 이나 print{s1 & s2} : s1과 s2의 교집합 출력
- print(s1|s2) 이나 print(s1.union(s2)) : s1과 s2의 합집합 출력
- print(s1-s2) 이나 print(s1.difference(s2)) : s1과 s2의 차집합 출력
- 추가 및 제거 가능
- 집합.add(데이터) : 집합에 데이터 추가
- 집합.remove(데이터): 집합에서 해당 데이터 삭제
4. 집합 자료형 함수
- 변수=list(집합)) -> list로 변환
- 변수=list(집합)) -> tuple로 변환
5.자료형 변환
- key를 특정 인덱스 번호만 출력하고 싶을 땐 리스트로 형변환을 해야 하고 그 형변환한 리스트를 다른 변수에 지정 후 인덱싱 가능
정규표현식
- 컴퓨터 언어를 넘나들며 쉽게 작업할 수 있다.
- 0부터 9 숫자 제외하고 나머지 삭제하고 출력
a="010-7777-9999" import re print(re.sub('[^0-9]','',a))#01077779999
대문자, 소문자 함수
- 대문자: upper()
- 소문자 : lower()
'Back-End > Python' 카테고리의 다른 글
[Python] 5. Python 자료구조(List, Tuple) (0) | 2021.08.21 |
---|---|
[Python] 4. Python 문자열 및 연산자 (0) | 2021.08.20 |
[Python] 3. Python 가상환경 설정 및 데이터 타입&숫자형&연산자 (0) | 2021.08.19 |
[Python] 2. Python의 구성 요소 및 print 구문 이해 (0) | 2021.08.17 |
[Python] 1. Python 개발 환경 설정 (0) | 2021.08.17 |