dev/python

python 정리

아디봉 2018. 9. 15. 19:25


파이썬 참고 사이트


예제로 배우는 파이썬 프로그래밍 

http://www.pythonstudy.xyz/


장고걸스 

https://tutorial.djangogirls.org/ko/django_models/


파이썬으로 배우는 알고리즘 트레이딩 (3쇄)

https://wikidocs.net/2828

 

https://docs.djangoproject.com


* 가상환경(virtual Environment)란? 

사용자가 정한 임의의 디렉토리 밑에 Python 과 관련된 패키지 등을 

함께 넣어 그안에서 독립적인 파이썬 개발환경을 구성한것 


* Django란?


* pip란?

python에서 사용하는 package Manager 로써 python3(3.4+) python2.7.9+

에 기본적으로 내장되어 있다.

pip 유틸리티는 python repository 에 있는 패키지를 설치하는데,

repository의 패키지 정보는 https://pypi.python.org/pypi 에서 볼수 있다. 

pip으로 패키지 설치는 "pip install 패키지명 "

삭제는 "pip uninstall 패키지명" 을 사용한다.


도구

 설명

 비고

virtualenv 

 2017년 현재, 가장 널리 사용되고 있는 Python 가상환경 도구

Python 2.6부터 현재까지 계속 사용되고 있음

PyPI로 설치 가능


 

 venv

 Python 3.4부터 표준배포판에 탑재됨

따로 설치할 필요가 없음


 



### 아나콘다 명령어 

아나콘다 가상환경 생성

conda create -n 가상환경명 python=3.6 anaconda

ex) conda create -n super_env python=3.6 anaconda


가상환경 접속(사용)

activate 가상환경명 

ex) activate super_env


아나콘다 가상환경 리스트 조회 

conda env list


가상환경실행 

source activate 가상환경명 


가상환경종료 

source deactivate 가상환경명  


### pycharm 

아나콘다 interpreter 경로

pycharm > 환경설정 > project:프로젝트명 > project interpreter

/anaconda3/envs/s_etf1/bin/python3.6


django 프로젝트 생성 

(pytharm 커뮤니티 버전은 django 프로젝트 생성안됨 )

https://medium.com/@yeonggyunlee_73538/django-tutorial-pycharm-77d2dec986d8


pytharm 에서 django 프로젝트 사용

가상환경에서 django설치하고  프로젝트 생성후 

pytharm 에서 run > editconfigurations > python 에서 script path 를 manage.py 

설정해 준후 사용하면 된다. 



### 파이썬 명령어


가상환경 설치 (python3이 설치된 경우 venv모듈을 사용) 

python3 -m venv hellovenv

tree -L 1 ENV


가상환경 설치 (파이썬 virtualenv 사용)

1) pip install virtualenv 

2) virtualenv ENV


가상환경 사용

source hellovenv/bin/activate


가상환경 비활성화 

deactivate 


가상환경 삭제 

deactivate 

rm -rf PATH/가상환경명

ex) rm -rf PATH/ENV



pip 버전 업데이트 

python3 -m pip install --upgrade pip


장고설치 ( 각각 사용하는 가상환경 안에서 django 설치해줘야함)

pip install django


장고 최신버전 업그레이드 

pip install -U Django


장고설치 (버전지정)

pip install django~=1.11.0

pip install django~=2.1.1

setting.py 설정변경후 적용

python manage.py migrate


프로젝트 생성 

django-admin startproject mysite .


서버시작 

python manage.py runserver


서버시작 (포트지정) 

python manage.py runserver 8080


django app - 파이썬 패키지 

django app패키지 안에는 자신의 모델 뷰 템플릿 url 매핑 등을 독자적으로 가지고 있음

하나의 프로젝트는 하나의 django app으로 구성 


django app 생성 - (manage.py 위치에서 )

./manage.py startapp home





Django App은 Django에서 사용하는 "파이썬 패키지"이다.

Django App 패키지는 그 안에 자신의 모델(model), 뷰(view), 템플릿(template), URL 매핑 등을 독자적으로 가지고 있으며, 

일반적으로 하나의 Django 프로젝트는 하나 이상의 Django App으로 구성되어 있다. 

규모가 큰 Django 프로젝트는 보통 여러 개의 Django App들을 모듈화하여 구성하는데, 

모듈화된 App들로 구성하면 개발 및 유지 보수가 효율적이기 때문이다. 

또한 잘 모듈화된 App은 여러 웹 프로젝트에서 쉽게 재사용할 수도 있다.



app만들기

python manage.py startapp blog

or

./manage.py startapp home



===== 관리자 계정생성 

python manage.py createsuperuser



===== django 패스워드 리셋 


python manage.py shell

from django.contrib.auth.models imports User

User.objects.filter(is_superuser=True)


usr = User.objects.get(username='admin')

user.set_password('shfwk!@12')

user.save()



===== migrate 


1) (models.py)에서 모델을 변경 


2) python manage.py makemigrations 을 통해 이 변경사항에 대한 migration을 만듬 


3) python manage.py migrate 명령을 통해 변경사항을 데이터베이스에 적용 



===== 관리자 생성 

python manage.py createsuperuser