반응형

분류 전체보기 764

Jinja2 조건문, 반복문 예제로 익혀보기 (if문, for문, flask)

Jinja2 란? 간단히 설명하면 HTML과 같은 웹페이지에서 파이썬과 유사한 문법을 사용해서 페이지 프로그램을 지원하는 템플릿임. 예를 들어 파이선(python) flask에서 어떤 값을 보내주면 웹페이지에서 해당 값을 프로그램해서 상황에 맞게 동작시킬 수있다. jinja2 사용 양식>> {{ 입력받은 값 }} {% 프로그램 언어 %} 위 코드처럼 HTML 문서에서 jinja2를 사용할 경우 일반 변수만을 화면에 출력할 경우 {{ }} 에 넣어주면된다. if나 for와 같은 프로그램을 작성할 경우 {% %} 안에서 작성하여야 한다. Jinja2 조건문 예제 (if문) 예제 동작을 간단하게 설명하면, http://localhost:9999/jinja_test 에 접속하면 var1, var2 변수를 넣는 ..

사인 스윕파(Sine Sweep)의 사이클(Cycle) 계산 방법(Calculation)

사인 스윕이란? 그리고 사이클 갯수가 필요한 이유 Sinusoidal Sweep wave, 사이파는 그림1처럼 시간이 흐름에 따라서 사인파의 주파수가 변경된다. 즉, 주파수가 시간에 연계되어 변하는 것이다. 주파수 변경 방법은 아래와 같이 2가지 방법이 있다. 선형적(Linear) 사인 sweep wave : 주파수가 시간에 비례해서 증가한다. 대수적(Logarithmic) 사인 sweep wave : 주파수가 시간에 지수적으로 비례해서 증가한다. Sine sweep 파형은 시험 규격에서 종종 나오는데 Sine sweep으로 진동이나 시험을 진행하여 몇 번의 싸이클(Cycle)로 시편에 힘을 가했는지에 따라 피로도(Fatigue)나 내구성(Durability)를 확인할 수 있다. 일반 사인파의 경우 사이..

여러가지공부 2021.05.06

파이썬 flask에서 render_template 함수 예제로 이해해보기

render_template 란? render_template 함수는 flask에서 제공하는 함수로 templates에 저장된 html을 불러올 때 사용하는 함수 이다. 아래 예제를 통해 이해해보자. render_template 실습 예제 a_page.html >> a_page goto_b_page b_page.html>> b_page test.py>> from flask import Flask, render_template app = Flask(__name__) @app.route('/goto_a_page') def goto_a_page(): return render_template('a_page.html') @app.route('/b_page') def goto_b_page(): return rend..

랜덤 진동 이란? (Random Vibration Testing)?

Random Vibration (랜덤진동) 도로 위의 차량, 로켓 발사, 터뷸런스 중에 비행기 날개 등에서 발생하는 진동은 반복적이지 않고 예측이 어렵다(Not repetitive, Unpredictable). 그림1은 운전중에 대시보드에 가속도 센서를 부착하고 측정한 가속도 값이다. 그래프에서 볼수 있듯이 예측이 어렵고 반복적이지 않다. 그러므로 현실을 반영하기 위해서 Random vibration 시험이 필요하다. Random (랜덤) vs Sine (사인) 사인파 진동 시험은 특정 주파수에 맞추어 진동을 일으킨다. 하지만 랜덤 진동 시험의 경우 규정된 스펙트럼(Spectrum)의 모든 주파수에서 가진 시켜준다. Tustin의 랜덤파형 정의에 따르면 "사람들은 10~2000Hz의 범위가 있다면 199..

여러가지공부 2021.05.04

진동에서 변위,속도,가속도의 관계 (Vibration, Displacement, Velocity, Acceleration)

진동에서 변위,속도,가속도의 관계 그림1과 같이 고정된 축이 흔들릴 경우 y축의 시간에 따른 움직임은 사인파(Sine wave)이다. 즉, 변위(Displacement)에 대한 파형을 알 수 있으면 시간에 따른 미분으로 속도(Velocity), 가속도(Acceleration)의 파형도 그릴 수 있다. 반대로 가속도를 알 수 있으면 적분으로 나머지 변위와 속도에 대한 정보를 얻을 수 있다. 사인파에서 가속도, 속도, 변위의 차이는 위상(Phase)이다. 진동(vibration)에서 가속도, 속도, 변위의 위상 관계는 중요하지 않다. 주파수 영역에서 가속도, 속도, 변위의 진폭(amplitude)가 변하는 데 이 점을 유의 해야한다. 예제를 통해 진동에서 변위,속도,가속도의 관계 이해하기 가속도센서(Acce..

여러가지공부 2021.05.04

Visual studio, HTML 자동 완성 설정하는 방법(HTML:5)

Visual studio, HTML 자동 완성 설정하는 방법 1. Extensions 에서 HTML Snippets 설치 위 그림과 같이 HTML Snippets을 설치한다. 2. View - Command Palette 실행 또는 Ctrl+Shift+P 실행 그림처럼 팔레트를 실행한다. 3. Extension: HTML Snippets 을 아래 그림처럼 실행 4. 아래 그림처럼 오른쪽 하단(파란색에 흰색글)에 값을 HTML로 변경 (만일 HTML이면 변경 필요 없음, 다른 값일 경우 클릭해서 HTML로 변경) 5. 프로그램 종료후 다시 실행 후 html 파일을 만들고 html을 천천히치면 아래 화면처럼 html:5 가 나옴 6. 아래 그림처럼 자동 완성됨

파이썬(Python) 2021.05.03

REST API란? flask를 통해 예제 실습하기

REST API 개념 REST 는 REpresentational State Transfer 의 줄임말이다. 검색을 통해 찾아보면 일반적으로 자원(resource)을 이름으로 구분해서 자원의 정보를 주고 받는 것을 의미한다라고 나와 있다. 위처럼 정의로 의미를 알기는 어려워서 내가 사용하는 환경(파이썬)의 예를 통해 설명하려고 한다. flask를 통해서 인구 정보를 가진 웹을 구축하였다고 예를 들어 보자. 그리고 해당 인구 정보는 DB에서 관리된다. 인구 정보를 DB에서 가져오려고 하는데 해당 웹페이지를 모두 로딩할 필요없이 사전에 약속된 주소로 DB값만 요청이 가능하게 만들 수 있다. 여기서 약속된 주소를 자원(resource)을 표현(representation)하였다고 한다. 한마디로 (flask에서 ..

파이썬 *args, **kwargs 의미와 예제를 통해 이해하기

파이썬 *args, **kwargs 의미와 예제를 통해 이해하기 예제 코드>> def a_func(*args, **kwargs): print(args) print("###########") for key, value in kwargs.items(): print(key) print(value) print("1번 예제") a_func(name='kc') print("") print("2번 예제") a_func("hi", name='kc') print("") print("3번 예제") a_func("hi", {"myname",'kc'}) print("") print("4번 예제") a_func(1,2,3) print("") 코드 결과>> 1번 예제 () ########### name kc 2번 예제 ('hi'..

파이썬에서 @(골뱅이, 데코레이터라고 불림)이란? 사용방법과 예제

파이썬 @ (Decorator) 사용예제와 방법 #골뱅이 마크 사용 예시 @wraps(f) @app.route @login_required @templated() Python flask를 사용하다 보면 위 코드와 같이 Decorator로 이루어진 구문이 있는데 동작 방식은 알지만 실제 "at" 기호가 앞에 붙을때 어떻게 움직이는지는 잘 몰라 조사하게 되었다. def a_func(b_func): print("a_func") def c_func(): print("b_func") b_func() return c_func @a_func def d_func(): print("d_func") print("############") d_func() >>결과 a_func ############ b_func d_func..

파이썬 함수 안에 중첩(nested)해서 함수 넣기

함수 안에 함수 중첩해서 넣기 예제와 특징 예제1 코드>> def a_func(): def b_func(): print("it's b_func") print("it's a_func") b_func() a_func() # b_func() #주석처리 결과>> it's a_func it's b_func 예제1 코드 주석>> 위 코드 예제는 a_func 함수 안에 b_func 함수를 넣어서 실행하고 있다. a_func()에 의해 함수가 실행되었다고 생각하자. 그러면 해당함수는 컴퓨터 메모리의 스택(Stack)이라는 공간에 저장되어 실행 된다. 스택의 a_func 함수 시작점 주소부터 코드가 진행되는데 그 내부에서 b_func 함수도 선언된다. 그리고 print("it's a_func") 가 실행되고 b_func..

반응형