오도원입니다.

건강과 행복을 위하여

반응형

Development/Python 26

Python. pip freeze 시, 버전명이 '@ file:///' 로 뜨는 문제

문제 상황 현재 환경에서 사용하고 있는 라이브러리 패키지 정보들을 가져올 때 보통 아래처럼 `pip freeze` 명령어를 사용해 `requirements.txt` 파일로 저장한다. pip freeze > requirements.txt 그럼 아래와 같이 해당 환경에 설치된 패키지들의 정보가 `requirements.txt` 파일에 저장된다. clickhouse-driver==0.2.5 clickhouse-sqlalchemy==0.2.3 colorama @ file:///croot/colorama_1672386526460/work colorlog==4.8.0 colour==0.1.5 commonmark @ file:///Users/ktietz/demo/mc3/conda-bld/commonmark_16306..

Development/Python 2024.01.22

conda 로 pymol, openbabel 설치시 주의사항

pymol-open-source=2.5, openbabel=3.1.1 기준입니다. conda를 이용해서 이들을 설치할 때 순서를 잘 선택해야 합니다. conda install -c conda-forge openbabel conda install -c conda-forge pymol-open-source 이 순서로 설치 시... conda 사용 중에 매우 보고 싶지 않은 다음과 같은 것이 출력됩니다. Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed wi..

Development/Python 2024.01.18

Python. poetry with requirements.txt

requirements.txt requirements.txt는 파이썬 프로젝트에서 사용하는 외부 라이브러리와 해당 라이브러리의 버전 정보를 명시적으로 작성하는 파일입니다. JS의 package.json과 같은 녀석 예시 numpy==1.20.2 pandas==1.2.3 matplotlib==3.4.0 사용 방법 pip으로 패키지들을 설치하고 나서 pip freeze > requirements.txt 를 사용하면 작성이 된다. JS에서 모듈 설치하면 자동으로 명시가 되는데 이걸 수동으로한다. 심지어 txt 확장자다. 역하다 레포지토리 구성할 때 pip install -r requirements.txt로 설치 poetry pip install을 통해 의존성을 설치했지만 패키지 관리가 수동이라니.. 너무 불편..

Development/Python 2024.01.18

poetry repo install

- pyproject.toml 파일이 있어야함 1. https poetry add git+https://github.com/repo.git 2. ssh poetry add git+ssh://github.com/repo.git 3. 태그지정 poetry add git+ssh://github.com/repo.git@{태그} 4. subdirectory 다운로드 poetry add git+ssh://github.com/repo.git#subdirectory={경로} 5. pyproject.toml로 다운로드 패키지 = {git = "ssh://github.com/{유저}/{레포}.git", subdirectory = "{경로}", tag="{태그}"} 지정 후, poetry install 수행

Development/Python 2023.06.27

[Python] 파이썬 Zappa로 flask web app을 AWS Lambda에 서버리스로 구현하기

반드시 알아가야 할 것 1. AWS Lambda 2. 서버리스 3. zappa 4. 파이썬 가상환경 설정하기 5. AWS 액세스 키 생성 후 AWS configure zappa는 파이썬 3.6 이상에서만 동작하므로 반드시 파이썬 3.6 이상인지 확인하라. $ python --version 목차 1. AWS 가입하기 2. 보안 자격 증명 3. AWS CLI2 설치 4. AWS configure 5. 파이썬 가상환경 생성 및 실행 6. 모듈설치 7. 앱 생성 및 실행 8. zappa init 9. zappa deploy dev 10. zappa update 11. zappa undeploy dev 1. AWS 가입하기 goddaehee.tistory.com/175 [AWS] 2.AWS 회원가입 따라하기 [A..

Development/Python 2020.10.13

[Python] 내장함수 id()

id(object)는 객체를 입력받아 객체의 고유 주소 값(레퍼런스)을 돌려주는 함수이다. >>> a = 3 >>> id(3) 140709757886928 >>> id(a) 140709757886928 >>> b = a >>> id(b) 140709757886928 위 예의 3, a, b는 고유 주소 값이 모두 140709757886928이다. 즉 3, a, b가 모두 같은 객체를 가리키고 있다는 것이다. 만약 id(4)라고 입력하면 4는 3, a, b와 다른 객체이므로 당연히 다른 고유 주소 값이 출력된다. >>> id(4) 140709757886960 참고. wikidocs.net/32#id

Development/Python 2020.10.06

(Python) if __name__ == "__main__"이란 무엇인가

파이썬 개발을 하다보면 다음과 같은 코드를 자주 본다. if __name__ == "__main__" 위 코드를 그대로 해석하면 "__name__ 이라는 변수의 값이 __main__이라면 다음 코드를 실행하라" 라는 뜻이다. 이 코드를 이해하기 위해서는 파이썬의 코드 실행방식과 __name__ 내장변수를 알아야한다. 1. 파이썬의 코드 실행 방식 C계열 언어 또는 자바와 같은 프로그래밍 언어에서는 항상 main()함수를 시작으로 프로그램을 실행시킨다. 하지만 파이썬은 main함수가 존재하지 않는다. 그렇다면 어떤 방식으로 코드를 실행시킬까? 파이썬은 크게 두 가지 특징을 가진다. 1. 들여쓰기를 통해 코드 실행의 레벨을 결정한다. 2. main이 존재하지 않는다. #include int sum(int n..

Development/Python 2020.10.06

Python. 깊은 복사와 얕은 복사; deep copy & shallow copy

1. 얕은 복사(shallow copy) a = {'name' : 'Kim', 'age' : 18} b = a b['name'] = 'Choi' print('b:', b) print('a:', a) 바로 할당을 할 시 얕은복사가 일어난다. ==로는 deep copy와 shallow copy를 구분할 수 없다. is함수를 써야 완전히 같은지 비교할 수 있다. is의 리턴값이 True일 경우 완전히 같은 값이다. 2. 깊은 복사(Deep copy) 1) import copy import copy a = {'name' : 'Kim', 'age' : 18} c = copy.deepcopy(a) c['name'] = 'Choi' print('c:', c) print('a:', a) 2) import json im..

Development/Python 2020.09.08

Python. windows cmd python console clear; 윈도우 cmd 화면에서 python 콘솔 초기화하는법

1. os 모듈이용 > import os > clear = lambda : os.system('cls') > clear() 물론 clear변수에 할당하지 않고 os.system('cls')만 해도된다. 참고로 리눅스 환경에서는 'cls'가 아닌 'clear'이다. 2. ANSI 이용 > print("\x1B[H\x1B[J") 해당 문자열을 출력하면 초기화된다. 하지만 이 문자열을 항상 외우고 다니기에는 어려우니 os를 이용한 방식을 추천한다.

Development/Python 2020.08.12
반응형