사전설치 : python, pycharm 파이썬은 들여쓰기로 코드를 구분한다. (JS의 ;(세미콜론)과 같은 기능이다.) 1. 변수 선언 # '#'을 입력하면 주석처리가 됩니다. # 변수선언 a = 1 # 출력 print(a) 2. 자료형 문자형 # ""이나 ''에 문자열을 감싸주면됩니다. a = "hello" b = 'cheri' a + b # hellocheri a + 5 # error! #문자열의 길이 구하기 len(a) #5 #대소문자로 변환 a.upper() #HELLO a.lower() #hello #문자열 나누기 # 이메일 주소에서 도메인 'gmail'만 추출하기 myemail = 'test@gmail.com' result = myemail.split('@') # ['test','gmail...
Flask는 편리하게 서버를 구동시켜주는 프레임워크입니다. Flask 기초 : 기본 실행 통상적으로 flask 서버를 돌리는 파일은 app.py라고 이름을 짓습니다. app.py 안에 아래와 같이 코드를 입력하고 app.py를 실행시킵니다. from flask import Flask app = Flask(__name__) @app.route('/') def home(): return 'This is Home!' if __name__ == '__main__': app.run('0.0.0.0',port=5000,debug=True) 터미널에 아래와 같이 메세지가 뜨면 실행 성공한 것입니다. 이제 크롬에서 localhost:5000으로 접속해봅시다! 아래와 같이 This is Home! 이라는 메세지도 확인 ..
Flask는 서버를 구동시켜주는 프레임워크입니다. 새 프로젝트 생성 Flask를 적용할 새 프로젝트를 만들어 봅시다! pycharm 실행 - file - new project를 클릭하면 아래와 같은 창이 뜹니다. 경로와 venv가 적혀있는지(없으면 venv를 적어주면된다.) 인터프리터 등 설정을 확인하고 생성합니다. 설정이 잘 되었다면, 아래와같이 prac 폴더에 venv 폴더가 생성되어있을 것이다. Flask 설치 file - setting - Project: prac - project interpreter 을 클릭합니다. + 버튼을 누르면 아래와 같은 창이 뜨며, flask를 검색 후, install package 를 클릭합니다!
3-12 pymongo로 DB조작하기 Pymongo 설치 mongoDB 라는 프로그램을 조작하려면, 라이브러리인 pymongo가 필요합니다. 1. pycharm 프로그램을 실행시킨다. 2. file-setting 클릭 3. pymongo 검색후, install package 클릭! DB 연결하기 dbprac.py라는 파일을 생성하고, 아래와 같이 기입한다. from pymongo import MongoClient # pymongo 임포트 client = MongoClient('localhost', 27017) # mongoDB라는 27017 포트로 돌아갑니다. db = client.dbsparta # 'dbsparta'라는 이름의 db로 접속합니다. (이름이 없으면 만듭니다.) insert from py..
3-10 DB설치 확인 몽고 DB는 그래픽인터페이스(GUI)를 제공하지 않습니다. GUI가 없어도 컴퓨터에서 실행되는 프로그램들은 무척 많습니다! 따라서, 몽고 DB가 잘 설치되었는지 확인을 하려면? 1. 웹에 localhost:27017을 입력하기 위와 같은 문구가 나온다면, 설치가 잘 된 것입니다. 2. robo 3T DB 내부를 살펴보기 위한 프로그램입니다. 설치하기 https://robomongo.org/download Robomongo Robo 3T: the hobbyist GUI Robo 3T 1.4 brings support for MongoDB 4.2, and a mongo shell upgrade from 4.0 to 4.2, with the ability to manually speci..
AJAX란? 페이지를 새로고침하지 않아도 데이터가 로드되게끔 합니다. JavaScript를 사용한 비동기 통신, 클라이언트와 서버간에 XML 데이터를 주고받는 기술입니다. JQuery는 간단한 문법으로 AJAX를 사용할 수 있도록 ajax라는 인터페이스를 제공합니다. AJAX만을 사용하기 위해 JQuery를 사용하기에는 파일자체가 무거워질 수 있습니다. 따라서, Axios나 Superagent, Isomorphic-fetch같은 라이브러리를 사용하는 것도 좋습니다. ajax 사용법 먼저, JQuery를 이용할 때는 꼭, cdn을 추가(링크)하거나, 다운로드를 해주어야합니다. 그 후 아래처럼 ajax를 사용해봅시다! $.ajax({ type: "GET", url: "여기에URL을입력", data: {}, ..
Number() 이나 String() 에서 ()안에 값을 넣으면 그 값이 number이나 string 형태로 바뀐다. Number('1') // 1 String(1) // '1' Boolean값을 Number로 바꾸면? let x = true; console.log(Number(x)) // 1 x = false; console.log(Number(x)) // 0 이렇게 true는 1로, false는 0으로 바뀌는 것을 볼 수 있다. Falsy한 값을 알아보자 x = '' x = 0 x = NaN x = undefined x = null 자동 형변환 JS에서는 자동으로 형변환 되는 것이 있다. //산술 연산 console.log(4 + '2'); //42 console.log(4 + 2); //6 cons..
str의 각 요소들과 "e"라는 문자와의 가장 짧은 거리를 구하는 문제이다. 1. 내 문제풀이방식 function solution(s, t) { let answer = Array(s.length).fill(Number.MAX_SAFE_INTEGER); const includeT = []; //s 안의 t 문자좌표구하기 for (let i = 0; i Ma..
5X5 격자판에서 각 행과 열의 합, 대각선의 합 중 가장 큰 수를 구하시오. 1. 내 문제풀이 방식 문제를 잘 못 이해하여서, 1~5열 1~5행을 전부다 구해야되는 지 모르고 문제의 그림대로의 행과 열만 구하였다. function solution(arr){ let column = 0, row = 0, diagonal1 = 0, diagonal2 = 0; for(x of arr[1]){ row+=x } for(let y=0; y
🥕 문제 : 점수들을 받아와서, 등수를 구하자. (같은 등수 허용) 정답을 보기 앞서, 앞서 먼저 풀어봤을 때의 오류도 확인해보자. function solution(arr){ let answer=[]; for(let i=0; i1); return answer; } 2.Array() function solution(arr){ let answer=Array(arr.length).fill(1); return answer; } 이런 방식들로, 배열들을 초기화시킬 수 있다. 📌문제해결 function solution(arr){ let answer=Array(arr.length).fill(1); for(let i=0; i
thebook.io/080203/ch07/ 리액트를 다루는 기술 [개정판]: 7장 컴포넌트의 라이프사이클 메서드 thebook.io 모든 리액트 컴포넌트에는 라이프사이클(수명 주기)이 존재합니다. 컴포넌트의 수명은 페이지에 렌더링되기 전인 준비 과정에서 시작하여 페이지에서 사라질 때 끝납니다. 리액트 프로젝트를 진행하다 보면 가끔 컴포넌트를 처음으로 렌더링할 때 어떤 작업을 처리해야 하거나 컴포넌트를 업데이트하기 전후로 어떤 작업을 처리해야 할 수도 있고, 또 불필요한 업데이트를 방지해야 할 수도 있습니다. 이때는 컴포넌트의 라이프사이클 메서드를 사용합니다. 참고로 라이프사이클 메서드는 클래스형 컴포넌트에서만 사용할 수 있습니다. 함수형 컴포넌트에서는 사용할 수 없는데요. 그 대신에 Hooks 기능을 사..
thebook.io/080203/ch03/04/ 리액트를 다루는 기술 [개정판]: 3.4 state thebook.io 리액트에서 state는 컴포넌트 내부에서 바뀔 수 있는 값을 의미합니다. 리액트에는 두 가지 종류의 state가 있습니다. 하나는 클래스형 컴포넌트가 지니고 있는 state이고, 다른 하나는 함수형 컴포넌트에서 useState라는 함수를 통해 사용하는 state입니다. 📌props와의 차이점 더보기 props는 컴포넌트가 사용되는 과정에서 부모 컴포넌트가 설정하는 값이며, 컴포넌트 자신은 해당 props를 읽기 전용으로만 사용할 수 있습니다. props를 바꾸려면 부모 컴포넌트에서 바꾸어 주어야 합니다. 1. 클래스형 컴포넌트의 state 컴포넌트에 state를 설정할 때는 다음과 같이..