함수 사용의 이용
- 분해
- 추상화
map
순회 가능한 데이터 구조의 모든 요소에 함수 적용하고, 그 결과를 map object로 반환
알고리즘 풀이시 input 값들을 숫자로 바로 활용하고 싶을 때 사용
map(function, iterable)
문자열 3 5가 들어오면 split으로 반복가능한 객체로 바뀌고 map 함수로 인해 int로 형변환 후 두 개의 변수에 각각 할당된다
List comprehension
기본 구조 : 표현식 + for문
result = [표현식 for 변수 in 리스트]
표현식 + for문 + 조건문
result = [표현식 for 변수 in 리스트 조건문]
조건문 + for문
result = [조건문 for 변수 in 리스트]
중첩 for문
result = [조건문 for 변수1 in 리스트1 for 변수2 in 리스트2 ...]
중첩 List Comprehension
출처) https://velog.io/@mttw2820/List-Comprehension-%EB%AC%B8%EB%B2%95-%EC%A0%95%EB%A6%AC
filter
순회가능한 데이터구조의 모든 요소에 함수 적용하고 그 결과가 True 인 것들을 filter object로 반환
filter(function, iterable)
zip
복수의 iterable을 모아 튜플을 원소로 하는 zip object를 반환
출력하면 [('jane', 'justin'), ('ashley', 'eric')]
lambda 함수
표현식을 계산한 결괏값을 반환하는 함수로, 이름이 없는 함수여서 익명 함수라고도 불림
lambda 매개변수 : 매개변수를 이용한 리턴값
패킹
- 대입문의 좌변 변수에 위치
- 우변의 객체 수가 좌변의 변수 수보다 많을 경우 객체를 순서대로 대입
- 나머지 항목들은 모두 별 기호 표시된 변수에 리스트로 대입
언패킹
- argument 이름이 *로시작하는 경우, 아규먼트 언패킹이라함
- 패킹의 경우, 리스트로 대입
언패킹의 경우, 튜플 형태로 대입
다양한 기능을 하나의 파일로 "모듈"
다양한 패키지를 하나의 묶음으로 "라이브러리"
함수(기능) > 모듈(파일단뒤) > 패키지(폴더단위) > 라이브러리(폴더단위)
pip install SomePackage{연산자 버전명}
pip list
pip show SomePackage
모듈
특정 기능을 하는 코드를 파이썬 파일(.py) 단위로 작성한 것
패키지
특정 기능과 관련된 여러 모듈의 집합
패키지 안에는 또 다른 서브 패키지를 포함
모듈와 패키지 불러오기
import module
from module import var, function, Class
from module import *
from package import module
from package.module import var, function, Class
python -m venv {폴더명}
(venv는 virtual environment)source venv/Scripts/activte
pip install ~
pip install requests (외부 모듈 설치)
pip list
pip freeze>requirements.txt