본문 바로가기

분류 전체보기980

Python Django 쿼리를 값 목록으로 필터링하는 방법은 무엇인가요?, How can I filter a Django query with a list of values? 질문 이건 단순한 작업이라고 확신하지만, 어떻게 하는지 알 수가 없네요. 이보다 더 똑똑한 방법이 있을 텐데요: ids = [1, 3, 6, 7, 9] for id in ids: MyModel.objects.filter(pk=id) 저는 이렇게 모두 한 번의 쿼리로 가져오고 싶습니다: MyModel.objects.filter(pk=[1, 3, 6, 7, 9]) 어떻게 하면 Django 쿼리를 값 목록으로 필터링할 수 있을까요? 답변 다음은 Django 문서에서: Blog.objects.filter(pk__in=[1, 4, 7]) 2023. 11. 24.
Python PYTHONPATH에 디렉토리를 영구적으로 추가하려면 어떻게 해야 하나요?, Permanently add a directory to PYTHONPATH? 질문 Whenever I use sys.path.append, the new directory will be added. However, once I close python, the list will revert to the previous (default?) values. How do I permanently add a directory to PYTHONPATH? 언제나 sys.path.append를 사용하면 새로운 디렉토리가 추가됩니다. 그러나 파이썬을 닫으면 목록이 이전 (기본?) 값으로 돌아갑니다. PYTHONPATH에 디렉토리를 영구적으로 추가하는 방법은 무엇인가요? 답변 만약에 Mac이나 GNU/Linux 배포판에서 bash를 사용하고 있다면, 다음을 ~/.bashrc에 추가하세요. expor.. 2023. 11. 24.
Python 파이썬에서 추상 클래스를 만들 수 있을까요?, Is it possible to make abstract classes in Python? 질문 파이썬에서 클래스나 메소드를 추상화하는 방법은 무엇인가요? 다음과 같이 __new__()를 재정의해 보았습니다: class F: def __new__(cls): raise Exception("추상 클래스 %s의 인스턴스를 생성할 수 없습니다" %cls) 하지만, 이제 F를 상속받는 G 클래스를 다음과 같이 만들면: class G(F): pass G를 인스턴스화할 수 없습니다. 왜냐하면 G는 슈퍼 클래스의 __new__ 메소드를 호출하기 때문입니다. 추상 클래스를 정의하는 더 좋은 방법이 있을까요? 답변 추상 클래스를 만들기 위해 abc 모듈을 사용하세요. 메서드를 추상으로 선언하기 위해 abstractmethod 데코레이터를 사용하고, 파이썬 버전에 따라 세 가지 방법 중 하나를 사용하여 클래스를 .. 2023. 11. 16.
Python 파이썬에서 문자열에서 영숫자 문자만 남기고 모두 제거하기, Stripping everything but alphanumeric chars from a string in Python 질문 파이썬을 사용하여 문자열에서 모든 영숫자가 아닌 문자를 제거하는 가장 좋은 방법은 무엇인가요? 이 질문의 PHP 버전에서 제시된 해결책들은 약간의 조정을 거치면 작동할 것 같지만, '파이썬 다운' 느낌이 들지 않습니다. 기록을 위해, 저는 마침표와 쉼표(및 기타 구두점)뿐만 아니라 따옴표, 괄호 등도 제거하려고 합니다. 답변 저는 그냥 호기심으로 몇 가지 함수를 시간 측정해 보았습니다. 이 테스트에서는 내장된 string 모듈의 string.printable에서 비알파벳 및 숫자가 아닌 문자를 제거합니다. '[\W_]+'와 pattern.sub('', str)의 사용이 가장 빠르다는 것을 알게 되었습니다. $ python -m timeit -s \ "import string" \ "''.join(c.. 2023. 11. 16.