본문 바로가기
반응형

파이썬54

[Python] PEP 8 - 파이썬 코드 스타일 가이드 파이썬 PEP 8을 번역한 내용입니다. https://peps.python.org/pep-0008/ 코드는 작성된 것보다 더 자주 읽혀진다. 여기에 제공되는 가이드라인은 코드의 가독성을 개선하고, 광범위한 파이썬 코드에서 일관성을 유지하기 위 것이다. PEP20에서 말했듯이 가독성이 중요하다. 스타일 가이드는 일관성에 관한 것이다. 스타일 가이드에서 일관성은 중요하고, 프로젝트 내에서는 일관성이 더 중요하고, 하나의 모듈 또는 기능 내에서는 일관성이 가장 중요하다. 언제 일관성이 없어지는지 알아야한다. 때로는 스타일 가이드 추천들이 적용되지 않을 수 있다. 확신이 서지 않으면, 본인의 최선의 판단을 사용하자. 다른 예시들을 보고, 무엇이 최선인지 결정하자. 그리고 질문하는걸 주저하지 말자. 특히 PEP를.. 2022. 9. 4.
[Python] pickle 모듈 - 파이썬에서 객체를 영속화하는 방법 다음 글(https://realpython.com/python-pickle-module)을 번역, 정리한 글입니다. 목차 · 파이썬의 직렬화 · 파이썬 pickle 모듈 내부 · 파이썬 pickle 모듈의 프로토콜 포맷 · Picklable and Unpicklable Types · Pickled Objects의 압축 · 파이썬 pickle 모듈의 보안 문제 개발을 하다보면 복잡한 객체 계층을 네트워크를 통해 전달하거나, 디스크나 데이터베이스에 저장해야할 수 있다. 이를 위해 직렬화라 불리는 과정을 사용할 수 있고, 파이썬에서는 표준 라이브러리로 pickle 모듈을 제공한다. 파이썬의 직렬화 직렬화는 데이터 구조를 저장하거나 네트워크로 전송할 수 있는 선형으로 변환하는 방법이다. 파이썬에서는 직렬화로 복.. 2022. 9. 4.
postman에서 csrftoken 자동으로 갱신하기 장고는 CSRF(Cross Site Request Forgeries)는 막기 위기 CSRF 보호 메커니즘이 내장되어 있다. AJAX POST 메서드에서 CSRF 보호가 활성화되면 X-CSRFToken 헤더가 요청에 포함되어야한다. 장고는 로그인시 csrftoken 쿠키를 설정한다. 로그인 후 Postman의 쿠키에서 csrf 토큰을 볼 수 있다. 해당 토큰을 가지고, 다음과 같이 헤더에 추가해서 사용하면된다. 하지만 해당 토큰이 만료되면, postman에서 수동으로 갱신해야한다. 이를 해결하고, 자동으로 csrftoken을 갱신할 수 있도록 하자. Postman의 스크립팅 기능을 사용하여 쿠키에서 토큰에서 토큰을 추출하고 변수로 설정할 수 있다. postman의 Tests 탭에 다음과 같이 작성한다. v.. 2022. 8. 9.
Fabric, 파이썬으로 원격 커맨드를 수행하는 방법 Fabric이란? · SSH를 통해 원격으로 shell 커맨드를 실행하도록 설계뙨 라이브러리다. 유용한 파이썬 객체를 반환한다. · Invoke(Task 실행 라이브러리, 하위 프로세스 커맨드 실행 및 커맨드라인 기능) 및 Paramiko(SSH 프로토콜 라이브러리)를 기반으로 하여, 해당 API를 확장하여 추가 기능들을 제공한다. · 애플리케이션 배포, 시스템 관리 작업 등에 사용할 수 있다. · 파이썬 2.7, 3.4 이상을 지원한다. 설치 $ pip install fabric 사용법 fabric을 설치하면 기본적으로 fabfile라는 이름의 파일에 정의된 명령을 읽고 실행할 수 있는 fab binary stub을 설치한다. fabfile.py라는 파일을 만들고 다음 코드를 작성한다. from fab.. 2022. 8. 7.
pyenv란? pyenv 사용하기 이 글은 다음 글을 번역하여 정리한 글입니다. https://realpython.com/intro-to-pyenv/ 목차 · pyenv란? · pyenv 설치하기 · 파이썬을 설치하기 위해 pyenv 사용하기 · pyenv로 사용할 파이썬 버전 지정하기 · 가상 환경과 pyenv pyenv란? · pyenv는 다양한 버전의 파이썬을 관리하는 도구다. · pyenv를 사용하면 올바른 버전의 파이썬을 사용하는 데 드는 시간을 최소화하여, 프로젝트에 들이는 시간을 최대화 할 수 있다. · pyenv를 사용하면 편리한 상황 1. 다양한 버전의 파이썬을 지원해야 하지만, 모든 버전을 쉽게 테스트 하는 방법을 확신하지 못할 때 2. 최신 버전의 파이썬의 새로운 기능을 사용해보고 싶지만, 개발 환경을 엉망으로 만들까.. 2022. 7. 9.
[오류해결] pyenv-virtualenvwrapper: x.x.x: virtualenv-clone is not available. failed to initialize virtualenvwrapper_lazy. pyenv-virtualenvwrapper: x.x.x: virtualenv-clone is not available. pyenv-virtualenvwrapper: failed to initialize virtualenvwrapper_lazy. 위 오류는 virtualenv-clone 파이썬 패키지가 설치되어 있지 않아 발생할 수 있다. 문제 해결: 아래 명령으로 해당 패키지를 생성한다. $ pip install virtualenv-clone 2022. 6. 30.
반응형