본문 바로가기

개발Study/python5

pip 패키지 설치 시간 단축시키기 참고 site: https://qspblog.com/blog/python-pip-%ED%8C%8C%EC%9D%B4%EC%8D%AC-pip-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EC%86%8D%EB%8F%84-%EB%B9%A0%EB%A5%B4%EA%B2%8C-%ED%95%98%EA%B8%B0 mirror site를 추가하여 단축시킬 수 있다. $ mkdir .pip $ vi .pip/pip.conf 아래 내용을 입력하여 kakao mirror site로 추가함. [global] index-url=http://ftp.daumkakao.com/pypi/simple trusted-host=ftp.daumkakao.com 개빨라짐... 2023. 9. 7.
convert hex string to bytes 할 때마다 검색하는 나란 개발자... 이 참에 정리해두자. 아래 string은 말그대로 hex string이다. hex값을 string형태로 가지고 있음. 이를 byte 형태로 변환하는 코드 str1 = '0x0A' str2 = '0A' # 먼저 integer의 형태로 변환 hexint = int(str1, 16) print(hexint) # integer to byte print(bytes([hexint])) # 한번에 하기 print(bytes([int(str1, 16)])) # str2도. print(bytes([int(str2, 16)])) 문자열을 숫자로 변환한다고 생각하면 쉽다. 16진수 숫자로 변환하는 것이다. 다음으로 int를 byte로 변환하면 된다. 출력: 10 b'\n' b'\n' b.. 2023. 8. 8.
python lambda lambda는 함수를 딱 한줄로 표현할 수 있는 문법이다. 별도의 함수로 정의하지 않고 필요할 때 정의해서 사용할 수 있으며, 특히 함수의 인자에 함수의 리턴 결과를 넣을 때 간단하게 사용가능하다. 함수를 정의해서 두고두고 쓰는것이 아니라 일회성으로 사용할 때 용이하다. 사용법: lambda 인자: 표현식 이렇게만 보면 뭔줄 모른다. def add(a, b): return a + b add(10, 20) 위의 간단한 덧셈함수를 람다를 사용하여 표현하면 (lambda a,b: a + b)(10, 20) lambda식을 해석해보자면 '인자 a, b를 받아 a+b 로 처리한다' 고 하면 될 것 같다. 또는 아래와 같이도 사용할 수 있다. addition = lambda a, b: a+b print(additi.. 2021. 3. 21.
python 소멸자 Python class 소멸자 소멸자는 class 내에서 아래와 같이 작성한다. class className: def __del__(self): 내용~~~~ 보통 소멸자를 호출할 때 사용법을 del className 위와 같이 알고있고, 나도 그렇게 알고있었다. (나만 그렇게 알고있던거 아닐까?;;) 소멸자가 호출되는 정확한 시점은 위와같이 del을 호출했을 때가 아니라, 실제로 객체가 모두 소멸되는 시점에 callback으로 호출된다. 그러므로 객체를 소멸시킬 때 작업을 다 해놓고, 소멸자에서 마무리 작업을 하도록 구현하는 것이 좋다. 원하는 시점에 소멸자의 호출이 안돼서 삽질했음. 2021. 3. 11.
Python에서의 Multiprocessing python에서 cpu core를 여러 개 사용하고자 한다면 threading의 Thread 모듈로는 불가능하다. 그 이유는 python의 GIL(Global Interpreter Lock)정책 때문이다. 여러 개의 쓰레드가 공유자원에 접근하여 값을 변경하는 시도를 할 때 결과가 제대로 반영되지 않는 문제가 발생할 수 있다. 이 문제를 race condition이라고 한다. python에서는 reference counting을 하여 메모리관리를 한다. 어떤 자원 하나에 접근할 때마다 reference 횟수를 증가시켜 체크한다. 함수에 var라는 변수를 넣을 때도 참조를 하므로 reference count를 증가시키고, 반대로 함수가 끝나면 reference count를 감소시킨다. 이런 식으로 진행하다가.. 2021. 3. 9.