Search
📝

TIL 22/07/22 (금)

TIL (Today I Learned)

2차원 리스트의 최솟값, 최댓값 구하기

map()을 활용하면 한 줄로도 간단히 구현 가능!
matrix = [ [0, 5, 3, 1], [4, 6, 10, 8], [9, -1, 1, 5] ] max_value = max(map(max, matrix)) # 10 min_value = min(map(min, matrix)) # -1
Python
숫자만 이해할 수 있는 컴퓨터가 문자를 인식할 수 있게 하기 위해 만들어진 코드
ord(): 문자를 아스키 코드로 변환
chr(): 아스키 코드를 문자로 변환

딕셔너리의 get()

딕셔너리에 key로 접근해 value를 얻는 것과 똑같은 역할
단 해당 value가 없을 때의 기본 값을 지정할 수 있음!
a = {'name' : 'alex'} a.get('name') # alex a.get('name', '이름이 없습니다')
Python

JSON 파일의 데이터 읽기

# open 및 json 모듈 사용예시 import json from pprint import pprint # 가독성 좋게 프린트 시켜주는 모듈 movie = open('sample.json', encoding='utf-8') # 상대경로 movie_detail = json.load(movie) # json -> dict print(movie_detail) pprint(movie_detail) # 딕셔너리를 가독성 있게 출력
Python

if name == 'main':

해당 파일을 직접 실행했을 때만 수행되는 코드를 작성
import만으로 다른 파일에서 실행되지 않도록.
if __name__ == '__main__': movie_json = open('data/movie.json', encoding='utf-8') movie_dict = json.load(movie_json) pprint(movie_info(movie_dict))
Python

WIF (What I Felt)

그 동안 map()을 입력을 받을 때, 정수 또는 문자로 변환하기 위해서만 사용하고 있었다.
최근에 map()의 확장성, 즉 모든 함수(심지어 사용자 정의 함수까지)를 사용할 수 있음을 알게 되었다.
따라서 2차원 리스트 같이 다소 복잡한 구조의 컨테이너의 최댓값, 최솟값map()을 활용하면 정말 간단히 구할 수 있게 되었다.
알고리즘 문제 풀 때 잘 써 먹어야 겠다. 구현시간 단축에 많은 도움을 줄 거라 생각한다.
그리고 딕셔너리get() 메소드가 있다는 사실!
key로 접근해서 value를 얻는 것과 크게 다르진 않지만, value가 존재하지 않을 때의 기본 값을 지정할 수 있다는 차이!
관통 PJT를 진행하면서 JSON 파일을 읽어오는 법과, if name == 'main': 에 대해서도 습득!