본문 바로가기
프로그래밍 언어

파이썬(Python) 정리 - 5. 리스트, 셋, 딕셔너리 내장 함수 및 메소드

by hongdor 2020. 12. 13.
728x90

알고리즘 공부를 위해 python으로 PS(problem solving)을 하려고 한다. 

그래서 파이썬을 정리해 본다.

 

출처 : R, Python 분석과 프로그래밍의 친구 (by R Friend) :: [Python] 리스트 내장 함수 및 메소드 (Python List Built-in functions and methods) (tistory.com) / Built-in Types — Python 3.9.1 documentation / collections — Container datatypes — Python 3.9.1 documentation

 

기본 자료형 list, set, dictionary에 대해 알아보자

 

 

1. list 

list[0] : 첫번째 요소 반환

list[-1] : 맨뒤 요소 반환

list[1:3] : 두번째 요소부터 네번째 요소까지 반환

+ : list 합치기

* : list 반복

for x in list : 사용 가능

 

len(list) : 길이 

max(list) : 최대 요소 

min(list) : 최소 요소

list(seq) : 튜플을 리스트로 변환

 

list.append(obj) : 요소 추가

list.count(obj) : 요소 개수

list.index(obj) : 요소 위치 index. 없으면 valueError 발생

list.insert(index, obj) : index 위치에 obj 삽입

list.pop(index) :  index 요소 제거 및 반환

list.pop() : 마지막요소 제거, list.pop(list[-1])과 같다. / 비어있을 경우 indexerror 발생

list.remove(obj) : obj 와 같은 값을 가진 객체 제거 / obj가 없을 경우 valueError 발생

list.reverse() : 요소 순서 거꾸로 뒤집기

list.sort(obj) : 정렬 (디폴트 오름차순), list.sort( reverse = True ) 는 내림차순

list.clear() : 모드 요소 삭제

 

** 덜 중요

del list : 리스트 삭제

list.copy() : 얕은 복사 반환

list.extend(list2) : 리스트 이어 붙이기 ( list += list2 )

 

 

2. dictionary

dic["key"] : key에 해당하는 value 반환 / 없을경우 키에러 발생

dic["key"] = value : key에 해당하는 value 추가 혹은 갱신(이미 존재할시) 

del dict ["key"]: dict["key"] 삭제 / key 가 없을경우 키에러 발생

key in dict, key not in dict : true, false 반환

 

len(dict) : 길이

str(dict) : 문자열 반환

type(variable) : 변수의 형태

list(dict) : key list 를 반환

 

dict.clear() : 모든 요소 제거

dict.get(key[, default=None]) :키가 없으면 default 값 반환. 

dict.pop(key[, default]) : 해당 key와 value를 없애고 value를 반환. key가 없을 때 default 반환. default 값이 없으면 키에러

dict.popitem() : 임의의 key와 value를 없애고 (key, value) pair 반환. 후입 선출. / key가 없을경우 키에러 발생

 

** 덜 중요

dict.update(dict2) : 기존 사전에 dict2 추가. key 중복시 덮어씀

dict.setdefault(key[, default=None]) : 키값이 없으면 키값에 default를 넣는다. 있으면 키값을 반환.

dict.copy() : 얕은 복사 반환

dict.keys() : 키 목록

dict.values() : 값 목록

dict.items() : (키, 값) 튜플 목록

 

 

3. set

len(set) : 길이

x in set, not in set : true, false 반환

 

set.add(obj) : 추가

set.remove(obj) : 제거 / 없으면 키에러 발생

set.discard(obj) : 제거 / 없어도 키에러 발생X

set.pop() : 임의의 값을 리턴하고 삭제 / 비었을경우 에러 발생

set.clear() : 모든 요소 제거

 

** 덜 중요

set.copy() : set의 얕은 복사 반환

 

set.isdisjoin(set2) : 공통 원소가 있는지 true, false 

set.issubset(set2) : set이 set2의 부분집합인가 true, false / 같을 때 true  ( set <= set2 )

set.issuperset(set2) : set이 set2보다 큰 집합인가 true, false / 같을 때 true ( set >= set2 )

set < set2 : 가능 true, false 반환

set > set2 : 가능. true, false 반환

 

set.union(set2) : 없는 key의 value들과 함께 합칩합을 만들어 반환 ( set | set2 )

set.intersection(set2) : 교집합을 반환 ( set & set2 )

set.difference(set2) : 차집합을 만들어 리턴 ( set - set2 )

set.symmetric_difference(set2) : 교집합 요소만 제외하고 합쳐서 반환 ( set ^ set2 )

 

set.update(set2) : 합집합을 만들어 봔한. 원본 데이터 set을 합집합으로 업데이트 ( set |= set2 )

set.intersection_update(set2) : 교집합을 반환. 원본 데이터 set 교집합으로 업데이트 ( set &= set2 )

set.difference_update(set2) : 차집합을 만들어 반환. 원본 데이터 set을 차집합으로 업데이트 ( set -= set2 )

set.symmetric_difference_update(set2) : 교집합 요소만 제외하고 합쳐서 반환. 원본데이터 set을 업데이트( set ^= set2 )

 

 

728x90

댓글0