
가비지 컬렉션이란? 모든 언어에서 변수를 등록하면 변수에 메모리가 메모리의 주소값이 할당된다. 그리고 변수의 크기만큼 메모리를 쓰게되는데 이 메모리는 우리가 알고있는 RAM을 의미한다. RAM은 휘발성 저장공간이다. 용량이 적지만 컴퓨터를 끄면 사라지는 데이터 공간이다. 대신에 빠르다. 만약 이 메모리 공간을 비효율적으로 사용하여 사용자의 메모리를 많이 잡아먹는다면 흔히 렉이 걸린다고 하듯 프로그램이 느려질 수 있다. 따라서 이 공간을 효율적으로 관리하는것이 프로그램을 빠르게 돌리는데에 있어서 중요하다. 가비지 컬렉션은 쓰지않는 값을 모아서 소멸시킨다. 레퍼런스 카운트 레퍼런스(reference) = 참조 파이썬은 변수의 레퍼런스 카운트가 0이 되었을때 그 변수는 소멸 되상이 되고 일정 규칙에 의해 가비..

가끔 파이썬 코딩을 할 때 다음과 같은 경우가 있다. answer = [] for i in arr: if i % 3 == 0: answer.append(i) flag = True break if not flag: answer.append(0) 원래는 위와 같이 flag를 쓰거나 함수를 만들어서 값을 return 해주는 방법으로 바꿔줬는데 더 좋은 방법이 있다. 파이썬에는 다음과 같이 for-else문이 가능하다. answer = [] for i in arr: if i % 3 == 0: answer.append(i) break else: answer.append(0)

보통 코딩테스트를 풀때 sys.stdout.write가 print보다 속도가 빠른 이유로 쓰는 경우가 있습니다. 하지만 sys.stdout.write를 쓸 때 주의해야할 점이 있습니다. import time import sys for i in range(10): sys.stdout.write(str(i)) time.sleep(1) 위와 같은 코드를 실행할 때 어떻게 출력이 될거 같으신가요? 1초마다 0, 1, 2, 3 .. 순서대로 출력이 될 거 같습니다. 하지만 출력해보면 10초 후 0,1,2,3.. 이 한꺼번에 출력됨을 볼 수 있습니다. 위 현상을 해결하려면 sys.stdout.write를 호출 한 후 바로 sys.stdout.flush()를 호출해주거나 print로 변경하면 됩니다. print는 내..

클래스의 개념 class는 객체지향 언어에 있는 개념이다. 객체를 만들기 위한 틀로 보면 쉽다. 클래스로 만든 객체에는 중요한 특징이 있다. 바로 객체마다 고유한 성격을 가진다는 것이다. 과자 틀로 만든 과자에 구멍을 뚫거나 조금 베어 먹더라도 다른 과자에는 아무 영향이 없는 것과 마찬가지로 동일한 클래스로 만든 객체들은 서로 전혀 영향을 주지 않는다. 클래스는 다음과 같이 선언 할 수 있다. class Car(): """ this is Car class """ # 클래스 변수 car_count = 0 def __init__(self, company, details): self._company = company self._details = details Car.car_count += 1 def detai..

map은 리스트의 요소를 지정된 함수로 처리해주는 함수입니다. 반복문을 쓰지 않고 map(함수, 리스트) 형태로 사용할 수 있습니다. 이때 list요소에 한개 이상의 함수를 쓰고 싶다면 직접 함수를 만들어서 쓰면 됩니다.. 😉 # Return cube of n def cube(n): return n**3 # Taking list as iterator evennum = [2,4,6,8] res = map(cube,evennum) print(list(res))
- Total
- Today
- Yesterday
- 프로그래머스
- 독후감
- conTeXt
- 파이썬
- Two Scoops of Django
- Python
- taggit
- 문자열 뒤집기
- go context
- stdout
- gunicorn
- dfs
- 팰린드롬수
- for-else
- leetcode
- 소프트웨어 장인
- sql lite
- go
- ManyToMany
- 백준
- 방금그곡
- 의대 신경학 강의
- django
- query
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |