
IT/파이썬 2021. 1. 25.
파이썬 상속 구조 확인 - 상속된 순서를 보여주는 함수
요건 팁으로 따로 저장한다. 나중에 이것만 찾기는 힘드니 정답은 짠짠 xxxx.mro() 원본 글은 아래에 있다. teddylee777.github.io/python/python-inheritance Python 클래스의 상속 (inheritance) Python 클래스의 상속 (inheritance) 방법에 대하여 알아보겠습니다. teddylee777.github.io 상속 구조 확인 상속의 구조는 클래스명.mro()로 확인할 수 있습니다. 구조는 상속 받은 순서대로 표시됩니다. 모든 class는 object를 상속받기 때문에 항상 object가 마지막에 표기 됩니다. Student.mro() [__main__.Student, __main__.Person, object] BJ. Cole Keister ..

IT/파이썬 2021. 1. 25.
파이썬 람다 함수 - lambda inline function
파이썬 소스 코드에서 lambda 라는 문구가 뵈길래, 또 찾아봄 간단하게 말하면 inline 함수같은 모양새네.. 문법은 lambda [매개변수 리스트] : [구문들...매개변수를 여기서 활용하는 간략한 코드] (lambda x,y: x + y)(10, 20) >> 30 파이썬의 다양한 기능과 합쳐져서, 강력하게 쉽게 사용할 수 있는 예제를 다양하게 찾아볼 수 있다. 겸사 map, filter, reduce 함수 같은 것도 배우자. 많은 소스들 중에서 아래 링크에서 정보를 획득하도록 하자. 잘 정리된 것만 여기에 올린다. ㅋㅋ 원본 링크 글에 많이 가셔서들 보세요. 여기 아래는 내가 나중에 이해가 쉽도록 간략하게 몇개만 가져옴. teddylee777.github.io/python/lambda-map-f..

IT/리눅스 2021. 1. 22.
우분투 리눅스 SSH 접속하기 - 윈도우 환경에서 SSH Key 방식 접속
로그인할때 마다 패스워드 입력하는 거 귀찮기도 하고, SSH RSA 키 방식으로 접속하면 한 번 세팅 이후에 편리해서 시도해 보기로. 먼저 윈도우 환경에 putty 를 설치하면 같이 들어 있는 PuTTYgen을 실행 시키고 아래 버튼 중 Generate 를 누른다. 막 마우스를 옮겨 다니면 랜덤 좌표를 이용해서 키를 하나 만들어 준다. 100% 까지 완성되면 아래와 같이 키가 생성된 창을 볼 수 있다. 생성된 public 키 부분의 텍스트를 열심히 긁어서 일단 아무 파일에 저장해두고, 아래 Save private key를 눌러 자신의 비밀키를 원하는 위치에 저장한다. 창이 뜨면 그냥 확인 누르고 진행하면 된다. 이제 윈도우의 키 준비는 완료된 셈이다. 서버로 가서 아까 복사해둔 공개키 텍스트를 서버에 어..

IT/파이썬 2021. 1. 20.
파이썬 - Flask 모듈을 Gunicorn 을 이용하여 Nginx 에 연동하기 - WSGI 서버
Flask 를 이용해서 파이썬 서비스를 개발했다. 그런데, 실행을 시켜보면 WSGI 서버를 사용해라는 경고가 떡하니 불안하게 만드네... WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. 요는 개발 단계에서 테스트로 flask 서버를 이용해도 무방하지만, 실제 배포 서비스 개시하는 production 단계에서는 WSGI 서버를 사용해라는 것이 요지이다. 아파치나 Nginx 서버에 연동해서 이 flask 모듈을 자동으로 불러 줄 수 있도록 설정해야 한다. 먼저 WSGI 를 설정하려고 찾아보다가 지-유니콘 이라는 모듈을 쓰면 아주 쉽고 성능도 괜찮게 쓸 수 있다는..

IT/파이썬 2021. 1. 20.
파이썬 flask 설정 값 읽어오기 - 파일에서
python flask 실행시에 설정 값을 파일에서 읽어오도록 설정, app.config.from_pyfile('파일명') from_envvar(variable_name) 있던데, 이 예제는 많이 있더라. 구글에서... 실제 설정 파일에는 아래처럼 변수=값 형태로 정보를 저장해 두면 된다. TESTING=False DEBUG=True 실제 mongoDB 설정값을 저장해 둔 예제를 가져와보면 파일 속에, MONGODB_SETTINGS = { # 'host': 'mongodb://localhost/DB이름' # 이런식으로 간단하게 하거나, 아래 처럼 'db': 'DB이름', 'host': '접속IP', 'port': 27017, #접속포트 'username':'아이디', # 접속 권한 아이디 'passwor..

IT/리눅스 2021. 1. 20.
우분투 리눅스 방화벽 설정하기 - ufw 설치 설정
포트가 계속 열리고, 간단하게 테스트하기 위해 코드를 오픈하고 접속하려니 방화벽 설정을 건드리는 부분이 많다. 윈도우는 그냥 어디에 있는 프로그램 띄워서 눈으로 보고 막 해도 되는데, 리눅스는 쩝... 무튼 간단하게 포트 설정을 오픈하고 닫고 할 수 있어서 다행이긴 하다 > sudo ufw enable > sudo ufw disable > sudo ufw reset SSH 포트 열기 sudo ufw allow 22 sudo ufw deny 22 서비스명으로 열기 / 닫기 sudo ufw allow ssh 서비스명은 아래 명령어로 살펴볼 수 있다. less /etc/services 룰 삭제 sudo ufw delete deny 22 아이피 룰 추가 sudo ufw allow from 192.168.0.10..

IT/리눅스 2021. 1. 19.
우분투 리눅스 SSH 서버 설정하기
이것저것 찾아보다, 아래 링크 글이 맘에 드네. jimnong.tistory.com/713 [우분투 16.04] SSH서버 구축하기(SSH 접속 설정) 이 글은 http://studyforus.tistory.com/235 의 내용을 제가 적용하면서 정리하는 겁니다. SSH는... 시큐어 셸(Secure Shell)의 약자입니다. 보안기능이 전제되어 있는 프로토콜이고요, ▲ 기본적으로 (보안이 jimnong.tistory.com 루트 권한으로 접속하는 과정도 설명이 되어 있으니 참고. sudo systemctrl enable sshd.service 이것을 명심하시게, 부팅이후에도 계속 자동으로 데몬이 수행되도록 하려면 ^^ bytefreaks.net/gnulinux/fedora-25-install-star..

IT/리눅스 2021. 1. 18.
우분투 리눅스 파이썬 버전 확인 필수 - 제길 python 2 가 기본이라뉘
윈도우 환경에서 잘 돌아가던 파이썬 코드를 그대로 올려서 기분좋게 run 시켰는데, 제길.... 제목 그대로다. 제길 파이썬 버전 2.x가 기본으로 사용되고 있다뉘....제길제길.. 먼가 설치가 자꾸 에러가 나더라니.. 찾아보니 많은 자료가 있네. 파이썬 버전 변경 방법으로 검색해 보면 된다. mickael-k.tistory.com/92 [Ubuntu] 파이썬(Python) 버전 변경 방법 기본 우분투를 깔고 터미널창을 열고 'python'이란 명령어를 치면 자동으로 python 2.x버전이 잡힙니다. 이번 포스트에서는 리눅스 Alternatives를 활용하여 Python의 기본 default인 2에서 새롭게 3으로 바 mickael-k.tistory.com 머 그러나, 깔끔하게 버전 2.x를 지워보려고..

IT/파이썬 2021. 1. 12.
파이썬 two way referencing in mongoengine - ReferenceField 팁과 문제 해결
아직 선언안된 테이블, 컬렉션 (머라 부르던) 객체를 레퍼런스 하는 필드를 추가하고 싶을때 NameError: name 'XXXX' is not defined 에러가 발생한다. 쉽게 해결하기 위해서는 레퍼런스 할 모델 클래스를 사용하기 전에 선언하면 좋긴한데 두 클랙스 사이에 각자가 각각 레퍼런스 하는 경우도 있기 때문에 순서로 해결하기 어려운 경우가 더 많다. 이중 참조 문제 해결 그런데, 아주 쉽게 해결이 되었다. github.com/MongoEngine/mongoengine/issues/1697 two way referencing in mongoengine · Issue #1697 · MongoEngine/mongoengine Hey i read here about two way referencin..

IT/파이썬 2021. 1. 12.
파이썬 venv 로 가상환경 설정하기
이제 파이썬이 기본적을 venv 라는 가상환경을 만들 수 있도록 패키지를 제공하고 있다. 별도의 다른 것을 설치할 필요가 없다. 아주 간단하게 아래와 같이 입력하면 간단하게 완료 된다 python -m venv 원하는가상환경이름 귀찮으면 그냥 아래와 같이 입력하면, 현재 디렉토리에 .venv 가상환경 설정 폴더가 만들어 진다. 헷갈리니깐 그냥 이름을 venv 로 입력해도 머 프로젝트 진행에 큰 무리가 없다. python -m venv .venv 가상환경을 만들 때 내가 시스템 기본 파이썬을 사용하면서 설치했던 전역 패키지들을 깔고 시작하는 방법 python -m venv 가상환경이름 --system-site-packages 그리고, git으로 관리하시는 분들은 .venv 폴더가 같이 관리될 필요는 없으니..

IT/파이썬 2021. 1. 11.
파이썬 flask - 접속 IP 어드레스 알아내기
간단하게 코드로 접속된 사용자의 IP address 를 알아낼 수 있다. 아래 글을 참고하시던지, 아래 코드를 참고하세요. ip_address = flask.request.remote_addr www.kite.com/python/answers/how-to-get-an-ip-address-using-flask-in-python Kite - Free AI Coding Assistant and Code Auto-Complete Plugin Code faster with Kite’s AI-powered autocomplete plugin for over 16 programming languages and 16 IDEs, featuring Multi-Line Completions. Works 100% locall..

IT/파이썬 2021. 1. 11.
파이썬 flask Mongodb 연결하기 - flask_mongoengine
파이썬 flask Mongodb 연결하기 flask_mongoengine 을 사용하는 경우, mongodb 연결 문자열을 만드는 코드를 참고용으로 남겨둔다. 보통 가장 기본적인 코드는 host 에 적혀있는 것인데, 사용자 로그인이 필요하다면 아래 코드를 참고하도록 하자. app.config['MONGODB_SETTINGS'] = { # 'host': 'mongodb://localhost/movie-bag' 'db': '데이터베이스이름', 'host': '접속 주소, 아이피 같은거', 'port': 27017, #기본포트넘버 'username':'사용자아이디', 'password':'사용자패스워드', 'authentication_source': 'admin' # 이줄은 그냥 넣어줘야 되더라구, 흠, 찾아봐..
