반응형

파이썬 111

Flask route란

flask route는 입력 인자의 위치를 웹브라우져를 통해 접속 했을 때 route 바로 밑에 정의 된 함수를 실행해서 return 값을 웹브라우져에 표현해 주는 것이다. 아래 예를 통해 이해해보자. 코드 - test.py>> from flask import Flask from flask import request from flask import render_template web_gui = Flask(__name__) @web_gui.route('/') def hello_fnc(): return 'Hello' @web_gui.route("/page", methods = ["GET", "POST"]) def page_fnc(): if request.method == "POST": return 'POST..

post form 으로 보낸 데이터 mongodb에 저장하기

이 프로젝트의 최종 목적은 아두이노에서 모은 가스, 온도, 습도 정보를 web GUI(Graphic User Interface)로 표현하는 것이다. 우선 첫단계로 일반적인 페이지에서 정보를 받아서 POST form으로 서버의 DB에 저장하는 예제를 실행하겠다. 파이썬 flask로 web GUI를 만들 예정이고, db는 Mongo 를 이용할 것이다. 코드-data_send.html>> raw data0 주석-data_send.html>> form으로 묶어서 POST를 보내는 것이다. action은 form을 진행한 다음 동작인데 그냥 원래 위치 그대로 유지한다. raw_data0을 동일한 이름으로 name에 묶어서 보내주는 역할을 한다. 코드- run.py>> from flask import Flask f..

virtualenv 가상환경 만들기

파이썬에서 가상환경을 만드는 주 목적은 프로젝트별 내가 설치한 library를 추적하기 편하게 하기 위해서 이다. 여러 프로젝트를 돌리다 보면 다양한 library를 설치하는데 이를 서버나 다른 PC에 옮길때 virtualenv로 독립된 공간을 만들면 옮기기 용이하다. 설치 방법>> visual studio 에서 가상환경을 만들 폴더를 만든다. 나는 webgui_project라는 폴더를 만들고 pip install virtualenv 위 명령을 실행해서 virtualenv 를 설치했다. (이미 설치해서 설치되어있다는 결과가 나옴) virtualenv venv 위 명령어로 해당 폴더에 venv (이름은 사용자 마음대로 변경 가능) 라는 가상환경을 만들었다. venv 폴더 밑에 일반적인 python 프로그램..

list copy [:] 리스트안에 콜롬(:) 사용하는 이유

코드>> a_var = [0,1,2,3] b_var = a_var c_var = a_var.copy() d_var = a_var[:] print(type(a_var)) print(a_var) print(b_var) print(c_var) print(d_var) print(id(a_var)) print(id(b_var)) print(id(c_var)) print(id(d_var)) 결과>> [0, 1, 2, 3] [0, 1, 2, 3] [0, 1, 2, 3] [0, 1, 2, 3] 3000420137536 3000420137536 3000421627328 3000421627136 주석>> 파이썬은 객체 언어이다. int 값을 정하는 것도 모두 객체이다. 위 코드는 리스트 값을 복사하는 여러 방법을 표현했다..

데이터 베이스 (DB) 개념

이번 프로 젝트는 파이썬으로 웹서버를 만들 것이다. 웹서버를 운영하기 위해 웹프로그램이 필요한데 이를 파이썬으로 할 것이다. 웹서버에는 사용자 정보나 각종 서버에 정보를 쓰고 읽고 하는 공간이 필요 하다. 이 공간이 데이터베이스다. 기존의 DB는 RDBMS(Relational Data Base Management System)라고 불렸다. Relational 은 엑셀과 같이 테이블로 구조를 가진것 처럼 생각하면 된다. 구조의 상대적 위치를 통해 자료를 찾는 것이다. SQL(Structured Query Language)이 Relational을 사용한다. SQL은 행과 열의 구조가 갖춰진 채로 저장하는 것이다. 나머지 DB 형태는 No SQL이라고 하는데 Document, Search engine, Key..

파이썬 함수안에 함수, 중첩함수

가끔 함수안에 함수를 쓰는 경우가 있는데 하나의 함수로 코드를 끝내고 싶을 때 쓰긴하지만 비효율 적이라 보통은 class를 사용한다. 함수안에 함수를 사용하게 되면 가장 바깥에서 선언된 변수는 함수 내에서는 전역변수 처럼 동작하고 함수 안의 함수에서 선언된 변수는 지역변수 처럼 동작한다. 아래 코드를 통해 이해해보자. 코드>> def f_out0(a_var): b_var = a_var print(id(a_var)) print(id(b_var)) print(b_var) print("#######") def f_in0(): b_var = "hi" print(id("hi")) print(id(b_var)) print(b_var) print("#######") def f_in1(): print(id(a_var)..

인스타그램 자동 "좋아요" 클릭 (like click) 파이썬

좋아요 자동 동작 코드를 보기 전에 자동 로그인과 자동 검색을 아래 링크서 먼저 확인하고 보는것을 추천한다. scribblinganything.tistory.com/20?category=943911 인스타그램 자동 로그인 (Instagram Log in) 코드>> from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions a.. scribblinganything.tistory.com scribblinganything.tistor..

파이썬 zip함수, 별표(*)

코드 >> a_var = [0,1,2,3,4] b_var = [0,1,2,3] c_var = [2,4,6,8] print(zip(a_var,b_var,c_var)) print(list(zip(a_var,b_var,c_var))) print(*list(zip(a_var,b_var,c_var))) 결과 >> [(0, 0, 2), (1, 1, 4), (2, 2, 6), (3, 3, 8)] (0, 0, 2) (1, 1, 4) (2, 2, 6) (3, 3, 8) 주석 >> zip 함수는 iterable 의 반복 가능한 자료형을 입력으로 받는다. 입력받은 인자 값의 갯수 중 최소 갯수를 받아서 묶어서 튜플로 보내 준다. 위의 예제에서는 b_var, c_var의 갯수가 4개로 가장 작으므로 4개의 튜플이 생긴다. 첫..

파이썬 functools reduce 사용법

간단히 코드를 통해 이해 해보자. 코드>> import functools a_var = [1,2,3,4,5,6,7] print(functools.reduce(lambda x, y: 10 * x + y, a_var, 0)) 결과>> 1234567 주석>> 위 코드는 리스트에 숫자를 꺼내서 정수형태로 합치는 코드이다. 우선 functools의 reduce 함수는 인자를 하나씩 꺼내어 표현식에 누적해서 넣는 방식이다. 함수 설명 부분을 visual studio에서 가져왔다. def reduce(function, sequence, initial=None) reduce(function, sequence[, initial]) -> value Apply a function of two arguments cumulat..

반응형