전체 글 125

백준- 단계별로 풀어보기| 7단계- 2차원 배열

단계 문제 번호 제목 내 코드 코드 비교 1 2738 행렬 덧셈 n, m = map(int,input().split()) a = [ [0 for i in range(m)] for j in range(n)] b = [ [0 for i in range(m)] for j in range(n)] new = [ [0 for i in range(m)] for j in range(n)] for i in range(n*2): li = list(map(int,input().split())) for j in range(m): if i map(str,list) 사용 2566 최댓값 max_tuple_idx = 0 max_num = 0 arr = [] for i in range(9): tuple = list(map(int,i..

[포스코x코딩온] 웹개발자 입문 과정 5주차 | 파일 업로드

1.파일 업로드 방법 보통 post 방식으로 데이터를 받을 경우 'body-parser'을 이용해서 req.body로 데이터를 전송하지만 파일 업로드 시에는 req.body로 파일을 전송 받거나 전송할 수 없다. 즉, 멀티파트 데이터(이미지, 동영상, 파일)를 처리하지 못한다. 따라서 다른 방식으로 파일 정보를 받는 방법이 필요한데, 그게 바로 'multer'라는 미들 웨어를 사용해야한다. multer은 내장되지 않았기때문에 별도로 설치해야한다. 2.multer 가.설치 npm install multer 나.서버단 설정(app.js) //multer 불러오기 const multer = require("multer"); //path: 파일, 폴더 경로를 쉽게 설정하게 함 //파일 업로드 경로 설정 = 서버..

백앤드/Node.js 2023.04.03

백준- 단계별로 풀어보기| 6단계- 심화 1

단계 문제 번호 제목 내 코드 코드 비교 4 10812 바구니 순서 바꾸기 N, M = map(int,input().split()) basket = [ i+1 for i in range(N)] for n in range(M): i,j,k = map(int,input().split()) #틀린 코드 temp = basket[i-1:k-1] basket[i-1:k-1] = basket[k-1:] basket[k-1:] = temp #맞은 코드 basket = basket[:i-1] + basket[k-1:j] + basket[i-1:k-1] + basket[j:] print(' '.join(map(str,basket))) n, m = map(int, input().split()) box = [i+1 for ..

[포스코x코딩온] 웹개발자 입문 과정 5주차 | 비동기 HTTP 통신 종류 (ajax, axios, fetch)

위와 같이 같은 페이지 내에서 form 전송하는 방법은 '비동기 HTTP 통신'을 통해서 할 수 있다. (type=“submit”을 사용할 경우 다른 페이지로 이동하며 이때는 '동기 HTTP 통신'방법이다.) 1.비동기 HTTP통신이란? 가.동기 방식: 한번에 하나만 처리, 순차적 방식 (페이지를 이동해서 서버가 데이터 처리) 나.비동기 방식: 서버에 데이터를 보내고 응답을 기다리는 동안 다른 처리가 가능한 방식 예를 들면 메일함 화면에서 메일을 확인하는 동시에 새로운 메일을 받을 수 있음 폼의 데이터를 서버와 'dynamic'(일부 내용 실시간 변경)하게 송수신할 때 즉 동적 폼 전송 시 비동기 HTTP통신 방식을 사용함 2.JavaScript 비동기 HTTP통신 방법 세가지 가.Ajax: JQuery..

백앤드/Node.js 2023.04.01

[포스코x코딩온] 웹개발자 입문 과정 5주차 | form 전송(get/post)

1.form 가.form이란 입력된 데이터를 한번에 서버로 전송하기 위해 사용 즉, 클라이언트가 서버에게 정보를 전달할때 사용 나.속성 1)action: 폼을 전송할 서버주소 지정 .. //app.js app.post("/postForm", (req, res) => { console.log(req.body); res.render("result", { title: "POST 요청 폼 결과 확인하기", id: req.body.id, password: req.body.pw, }); }); 2)name: 폼을 식별하기 위한 이름, 반드시 지정 ... const form = document.forms["login1"]; 3)target: action 속성값에 지정한 스크립트파일을 다른 위치에서 열게 함 4)met..

백앤드/Node.js 2023.03.31

[포스코x코딩온] 웹개발자 입문 과정 5주차 | 노드 프로젝트 생성

1. 프로젝트 생성 가. npm으로 프로젝트 시작 및 express, ejs 설치 1) npm이란? Node Packaged Manager의 약자로 Node.js로 만들어진 pakage(module)을 관리해주는 툴 2) 설치 cd 프로젝트경로 npm init -y #프로젝트 시작 명령, -y 옵션: package.json 기본 값으로 생성 npm i express ejs # express ejs 설치 나. app.js 생성 1) app.js 생성 touch app.js 2) app.js 작성 const express = require("express"); const app = express(); const PORT = 8000; // 탬플릿과 탬플릿 엔진 설정 app.set("view engine", ..

백앤드/Node.js 2023.03.31

코딩테스트 - 파이썬

1. print()문을 이용할 때, 따옴표등 특수문자를 출력하는 방법. 1) 따옴표 안에 전 후로 \ (Back slash) - \" or \' print('\"Hello World !\"') 2) ''' or """ print(''' "Hello World!" '''); 2. map의 결과를 다시 리스트로 변환해야함 li = map(int,input().split()) ori = [1,1,2,2,2,8] new = [ ori[i] - li[i] for i in range(len(li)) ] new = ' '.join(map(str,new)) print(new) - join 은 ('출력할 때 구분문자').join(리스트) 가 구조임 - map 한후 바로 출력하면 리스트가 아니라 오브젝트 값이므로 반드시 ..

[포스코x코딩온] 웹개발자 입문 과정 5주차 | async await

1. async / await 방식 프로미스기반 코드를 좀 더 쓰기쉽고 읽기쉽게 하기 위해 등장했다. 비동기처리 패턴중 가장 최근에 나온 문법이다. 앞선 페이지에서 비동기를 처리하는 방법 중 3번째 방법이다. 2. promise 방식과 비교 기본 코드 function fetchFruits() { return new Promise((resolve, reject) => { setTimeout(() => { const fruits = ["🍎", "🍐", "🍋"]; resolve(fruits); reject(new Error("unknowm error")); }, 1000); }); } 1) promise .then(...).catch(...)방식 //promise then() 사용 시 fetchFruits()..

백앤드/Node.js 2023.03.29