python에서 __name__, __file__, __doc__

Python 코드를 보다보면 이건 뭐지 궁금한 변수들이 많다. 각각의 의미는 다음과 같다.   __name__ : 모듈명(모듈을 직접 실행하는지, 모듈로 이용하는지 구별하는 데 이용) __file__ : 모듈이 있는 절대 경로(모듈이 있는 디렉토리를 얻을 때 사용) __doc__ : 모듈에 대한 설명(모듈의 이용 방버버에 대한 설명을 얻을 때)

Share

python 모듈 생성시 유의할 사항

모듈을 만들경우 외부에서 불러올 수 있는 특정 함수나 변수를 미리 정의해야 한다. 정의하는 방법은 소스내에 __all__을 통해 정의할 수 있다. [sample] #module.py __all__ = [‘add_number’, some_var1] –version__=1.0 some_var1=1.1 some_var2=2.2 def add_number(n): total=0 for i in range(0, n+1): total+=i return total #use_module.py from module import * print(add_number(10)) print(some_var1) print(some_var2) # 이부분의 경우 print(module.some_var2) 로 변경 하면

Share

python에서 *과 **의 의미

python 소스를 보다보면 의미모를 것들이 참 많다. 그 중에 하나였던 *, **의 정체를 알아보자. 거두절미 하고 간단한 예제와 주석으로 대체한다.   # 함수에 입력되는 변수 개수를 알 수 없을 때 사용한다. *args 형태로 매개변수를 설정한다. # 즉 ‘*’의 의미는 튜플형태로 매개변수를 받겠다고 지정한다는 의미를 갖는다. def add(*args): total=0 for i in args: total+=i return total

Share

python에서 문자열 표현

python에서 문자열을 표현하는 포맷팅(formatting) 방법이다. 크게 printf, format 2가지 방식이 있다. 1.printf 방식 데이터에 따라 변경될 자리를 % 기호로 표시한다. 포맷 스트링 형식은 다음과 같다. %[플래그][크기][정확도]타입 # printf 방식 예시 >>> f=1.23 >>> print(“f is %f” %f) f is 1.230000 #만약에 int형태로 선언하고 float를 넣으면 int형태로 출력한다. >>> print(“f is %d” %f) f is 1

Share

uWSGI와 Nginx로 flask app 배포하기

flask 배포에 대해 고민이 많았었다. 관련 책을 봐도 잘 안되고 해서 직접 구글링 하면서 해보니, 리눅스 버전에 따라 환경설정도 다르고해서 먼저 구조적인 원리와 각각의 설정 방법에 대한 이해가 필요했다. 여기저기 삽질 끝에 아래링크와 같은 좋은 자료를 찾아서 함께 공유하고, 한글버전으로도 제공하고자 한다. [참고자료] https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uwsgi-and-nginx-on-ubuntu-14-04 https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uwsgi-and-nginx-on-ubuntu-16-04   먼저 고려해야 할 사항은 서버 os 선택 : ubuntu만

Share

자료형에 따른 유용한 python API

1. 숫자 – abs(x) :절대값 반환 – hex(x) : 16진수 값 문자열로 반환 – bin(x) : 2진수 값 문자열로 반환 – oct(x) : 8진수 값 문자열로 반환 – round(number[, ndigits] : 숫자를 반올림한다 []자릿수 – pow(x,y[,z]) : 거듭제곱 x**y%z 2. 문자 – ord(‘문자’) : 해당 문자에 유니코드의 숫자를 표시한다. – chr(‘숫자’) : 해당 숫자의 문자를

Share

Python App 어느 클라우드에 서비스할까?

python으로 서비스 개발을 하고 있다. 막상 서비스를 런칭하면 어느 클라우드 서비스에 런칭하는게 좋을까? 고민을 하다가 찾아보았다. 마침 좋은 글이 있어 나름 의역을 하면서 내용을 정리했다. 나름의 생각으로 다시 정리했지만, 원문을 꼭 참고하길 바란다. 왜냐면 python 관련하여 좋은 자료들이 매우 많다. 원본 출처 :  APP DYNAMICS(https://blog.appdynamics.com/product/battle-of-the-paas-python-apps-in-the-cloud/)   자 먼저 당신이 열심히 개발한 python으로 만든 서비스를 web으로

Share

AWS에 Flask를 활용한 python 서버구축하기(가장 쉬운방법)

1. AWS 시작하기 Amazon EC2 :  https://aws.amazon.com/ko/ec2/?hp=tile&so-exp=below 본 예제에서의 설치버전 : Ubuntu Server 16.04 LTS (HVM), SSD Volume Type – ami-f293459c – 첫 가입시 무료로 이용할 수 있는 인스턴스 입니다. port 설정안내 – python에서 별도의 포트를 설정하지 않으면 기본으로 5000번 포트를 사용한다. – AWS에서 보안영역에서 5000번 포트를 개방하도록 설정이 필요하다. – 위치 : Console > NETWORK &

Share

HTTP 상태코드

HTTP 상태코드란? 클라이언트가 요청(Request)한 것에 대한 서버측 응답(Response)결과를 나타냅니다. 3자리 숫자로 구성되고, 첫번째 자리는 응답에 대한 상태코드클래스를 나타냅니다. 상태코드 클래스별 의미 1xx Information : Request 처리중 2xx Success : Request를 정상적으로 처리함 3xx Redirection : Request를 완료하기 위해서 추가 동작이 필요함 4xx Client Error : 서버는 Request 이해 불가능 5xx Server Error : 서버는 Request

Share