묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
PyMySql를 import하려는데, 강의 화면에서처럼 에러 메시지가 나오기에, 터미널에서 pip install PyMySql을 실행하여 설치했지만, import오류가 계속해서 나옵니다. 어떻게 해야 할까요?
PyMySql를 import하려는데, 강의 화면에서처럼 에러 메시지가 나오기에, 터미널에서 pip install PyMySql을 실행하여 설치했지만, import오류가 계속해서 나옵니다. 어떻게 해야 할까요? MAC에서 연습하고 있구요~ 에러 메시지 내용은, Requirement already satisfied: pymysql in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (0.9.3) 이렇게 나옵니다.
-
해결됨파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap
질문이 있습니다.
가상머신을 만들어냈지만 제가 만들어낸 venv 폴더에는 수업과는 다르게 구멍이 뚫려있지 않는 모습입니다. 그래서 .gitignore과 db.sqlite3가 인식이 안 되는 것 같은데 어떤 부분이 문제인지 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
PPT 사용에 대해서 문의 드립니다.
영한님 강의 잘 보고 있습니다! 영한님 강의 내용을 제가 복습하기 쉽게끔 요약 정리해두려고 하는데, 이때 PPT 자료와 함께 정리하고자 합니다. 출처를 남기고 PPT 자료의 일부분을 블로그나 github에 올려도 괜찮을까요? 불가능하다면, private 으로 간직하겠습니다^^
-
미해결C 프로그래밍 - 입문부터 게임 개발까지
checkFishAlive 질문입니다
다른 함수들은 정의를 할 때 메인 위에 전역변수 선언? 인가 그런 걸 했는데 checkFishAlive는 선언을 안했는데 그 이유가 뭔가요? 다른 함수들은 선언을 안하면 작동을 안하는데 이 경우 작동을 하는 이유도 궁금합니다
-
해결됨웹 게임을 만들며 배우는 React
ref를 이용해서 dom에 접근하는거요
this.input.focus(); 를 사용하기 위해서 input; 을 선언하고 ref 를 넣어준다고 이해했는데 맞나요? onRefInput = (c) => { this.input = c;}; 이건 해줬긴 한데 위에 input; 이건 안써줬거든요 근데 this.input.focus(); 는 잘 작동을 하네요. input; 을 먼저 선언해주지 않더라도 this.input을 사용 할 수 있는건가요?
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
안녕하세요. 선생님
안녕하세요. 선생님! 명절 연휴 잘 보내셨나요? 다름이 아니라.. 제가 작성한 코드가 -1이 발생하는 경우에 time_limit이 발생하는데.. 원인을 못 찾겠어서 이렇게 찾아왔습니다..ㅎㅎ 알고리즘 상 선생님과 다른 부분은 거의 없습니다. dis배열에 거리를 판단하는게 아니라 그냥 map 배열에 거리를 늘려가면서 거리자체가 체크역할도 하는 것입니다. map에 덧씌워서 하기 때문에 초기거리값은 1부터 시작해야 했고 마지막 거리를 출력할 땐 -1을 해서 출력하도록 하였습니다. 그리고 -1을 출력하는 경우는 모두 다 훑어서 0이 나오면 -1을 출력하는 방식이 아니라 처음 map배열을 입력받을 때, 0의 개수를 파악해놓은 다음 0을 처리할때마다 감소시켜서 이값이 하나라도 남아있으면 0보다 크므로 0이 아닐때 -1을 출력하도록 하였습니다.. 이렇게 그냥 부수적인 처리방식만 다를뿐.. 어디서 dfs를 타임리밋 뜨게 하는지 도통 모르겠습니다.. ㅠ //[쟁점] 매 토마토마다 새로운 배열로 초기화해야 하나? 주객전도x //BFS에서 time_limit이 발생하는 이유는 ? #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <queue> using namespace std; int map[1005][1005]; //거리를 한꺼번에 표시. 0은 익지 않은 토마토인 동시에 방문하지 않은 토마토 queue<pair<int, int > > q; int maxval = -2147000000; int dis; int dr[4] = { 1, 0, -1, 0 }; int dc[4] = { 0, 1, 0, -1 }; int untom; int main() { freopen("data.txt", "rt", stdin); int n, m; cin >> m >> n; for (int i = 0; i < n; i++) { //map 입력 및 토마토 위치 파악 for (int j = 0; j < m; j++) { cin >> map[i][j]; if (map[i][j] == 1) q.push(make_pair(i, j)); else if (map[i][j] == 0) untom++; } } pair<int, int> fr; while (!q.empty()) { fr = q.front(); q.pop(); dis = map[fr.first][fr.second]; if (maxval < dis) maxval = dis; for (int i = 0; i < 4; i++) { int rr = fr.first + dr[i]; int cc = fr.second + dc[i]; if (rr < 0 || rr >= n || cc < 0 || cc >= m) continue; if (map[rr][cc] == 0) { untom--; map[rr][cc] = map[fr.first][fr.second] + 1; q.push(make_pair(rr, cc)); } } } if (untom == 0) cout << maxval - 1 << endl; else cout << -1 << endl; }
-
미해결예제로 배우는 스프링부트 입문
writeDao()를 할때 값은 어느코드에서 넣어주는건가요??
1. writeDao()를 할때 파라미터들을final String writer, final String title, final String content 이렇게 받아오잖아요 그 파라미터들을 넣어주는게 return template.update(query, writer, title, content); 에서 넣어주는건가요?? values에 물음표에 실제들어갈 값들이 전달되는게 template.update 에서 전달되는것인지 궁금합니다. 2. 컨트롤러에서 값을 받을때 Model 파라미터의 위치나 HttpServletRequest request의 위치가 변해도상관이 없는건가요?? 예를들어 자바스크립트에서는 인자를 받을때 첫번째인지 두번째인지 구분되어야할 필요가 있잖아요 특히 다른사람이 만든 외부 라이브러리를 사용할때는 첫번째 인자인지 두번째 인자인지 위치가 중요할텐데 자바에서는 메서드에 인자를 넘겨줄때 어차피 타입을 명시해주니까 상관없을것 같기도한데 어떤지 궁금합니다. 예를들어 @RequestMapping("/delete")public String delete(HttpServletRequest request, Model model){ dao.deleteDao(request.getParameter("id")); return "redirect:list";} 이렇게 받든 @RequestMapping("/delete")public String delete(Model model, HttpServletRequest request ){ dao.deleteDao(request.getParameter("id")); return "redirect:list";} 이렇게 받든 파라미터의 순서는 상관이없는건가요??
-
해결됨C 프로그래밍 - 입문부터 게임 개발까지
강의와 똑같이 입력했는데 오류가 발생합니다
삭제된 글입니다
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
스스로 해보기 하는 중 질문입니다.
1. 이상하게, 프론트에서 요청보내면 req.get('origin')의 포트가 8003으로 잘 나오는데, 프론트에서 요청 말고, url(주소창)로 요청을 보내면 (ex. '/mypost', 'search/:hashtag') getorigin 하면 undefined 나오고 req.headers.host 하면 포트가 8002가 나옵니다ㅠ 작성한 코드는 첨부한 것과 같습니다. 그래서 call 쪽에서 axios.get 요청 보낼때, headers 객체 안에 host: 'localhost:8003' 이렇게 하니까 api 쪽에서 req.headers.host 했을때 8003으로 꺼내져서 그렇게 하긴 했습니다ㅠ 2. 그리구 쌤 코드를 따라 하다 보니까, nodebird-api 쪽 서버의 '/token' 라우터에 limiter가 있으면 call 쪽에서 첨에 토큰이 없는 경우 발급해주고 그다음 필요한 요청에 대해 응답해주어 이런 경우 2번이 연달아 요청이 발생해서 해당 토큰 발급해주는 라우터에는 limiter가 없는게 좀 더 맞는거 같은데 어떻게 생각하세요~?(해당 상황은 1분에 1번 제한일 경우에.) limiter가 있을 경우 토큰이 없는 첨 상황에는 토큰 발급하고 바로 실제 필요 요청이 오는데 그러면 토큰 발급하고 1분을 기다리게 되서요 ㅎ; 답변 해주시면 감사드립니다 ㅎ
-
미해결쉽게 배우는 Webpack
마지막 강의 참고 자료 문서
안녕하세요 질문이 하나 있어서 남기게 되었습니다. 마지막 강의 웹팩 참고자료 파일은 혹시 어디서 확인 할수 있는지 궁금해서요 강의 잘 들었습니다. 감사합니다.
-
미해결더 자바, 코드를 조작하는 다양한 방법
JVM Memory 메서드 영역과 metadata space 의 차이점
안녕하세요 새해복 많이 받으세요:) 더자바 완강 후 메모리구조에 대해 다시 스터디하고 있습니다. 그러던 중 java8 부터 바뀐 metadata space 에 대해 알게 되었는데요, 힙 영역과 분리되어있고 메타데이터(클래스 이름, 메서드 정보 등)을 담고 있는 걸로 확인했습니다. 더자바 강의에서 메모리의 메서드 영역에 클래스 수준의 정보(풀패키기 경로, 메서드 이름, 변수 명 등)를 담는걸로 학습했던 기억이 있어 두 개념의 차이점을 알고 싶어 질문 남깁니다. 좋은 강의 올려주셔서 감사합니다!
-
React로 NodeBird SNS 만들기
궁금증 질문드립니다
삭제된 글입니다
-
미해결Vue로 Nodebird SNS 만들기
게시글 불러오기할때 에러는 없는데 then 이후로 실행이 안되서여
에러도 없고 액션도 실행되는데 then 이후로 실행이 안되는것 같아여 게시글을 입력한뒤에 게시글 출력되는건 잘되는데 왜그런건지 몰겠어여
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
네이버 크롤링에서 결과값이 나오지 않습니다.
import requests from bs4 import BeautifulSoup res = requests.get('https://www.naver.com/') soup = BeautifulSoup(res.content,'html.parser') mydata = soup.find_all('span',attrs={'class':'ah_k'}) for item in mydata: print(item.get_text()) ============================ 위와같이 실검키워드 크롤링하려는데 결과값이 나오지 않습니다. 어떤것 때문에 그러는지 알려주실수 있을까요? 네이버 안의 <a> 태그로 되어있는 제목은 크롤링 정상적으로 되는거 확인하였습니다.
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
'CLI'바꾼 후, npm i -g , npm ERR! code EEXIST
commander 'cli' 사용하기 위해, package.json 에서 bin 'commander.js'로 바꾸었습니다. cli -v 해보았으나 터미널에서 새로운 cli를 인식을 하지 못하여, 제로초님 코드 그대로 package.json, cli를 'command.js' 로 바꾼 후, npm i -g를 했으나 node-module에서 계속 commander.js를 인식하고 있는 듯 합니다. stackoverflow등 확인을 해보고 1. npm update, 2. (package.json, node_modules, package-lock.json)을 제거한 후, npm i -g를 해보았으나 결과는 아래와 같이 반복됩니다.. *폴더를 다시 만들어서 프로젝트를 진행을 해야할까요? 어떤 방법이 효율적인지 궁금합니다.. frankkim@Frankui-MacBookPro ~/Desktop/NodeCLIproject/node-cli master ● ? npm i -g ✔ 671 16:27:38 npm ERR! code EEXIST npm ERR! path /usr/local/bin/cli npm ERR! Refusing to delete /usr/local/bin/cli: ../lib/node_modules/node-cli/commander.js symlink target is not controlled by npm /usr/local/lib/node_modules/node-cli npm ERR! File exists: /usr/local/bin/cli npm ERR! Remove the existing file and try again, or run npm npm ERR! with --force to overwrite files recklessly. npm ERR! A complete log of this run can be found in: npm ERR! /Users/frankkim/.npm/_logs/2020-01-26T21_28_16_088Z-debug.log
-
미해결업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
크롬창 자동종료 확인사항
selenium을 사용한 구글 크롤링 강의를 듣다가 무엇을 검색할까요? :파이썬 이라고 검색했을때 크롬창이 켜졌다 자동으로 종료되는 경우를 겪어 다음과 같이 해결하였고 공유하면 좋을것 같아 글 남기겠습니다. 1. 자신의 크롬 브라우저 버전 확인 chrome://version/ 2. ChromeDriver - WebDriver for Chrome 에서 자신의 크롬 브라우저 버전과 일치하는 버전을 다운받았는지 확인. 크롬 브라우저 버전은 79인데, ChromeDriver 80 을 받아 자동 종료되는 경우였습니다. ======================================= 크롤링은 항상 변할 수 있고 클래스는 언제 바뀔지 모르기때문에 안되면 확인해야 한다고 강의 후반부에 말씀하셨듯이 2020-01-26 기준 확인결과 아래 클래스가 변경된것을 확인하였습니다. for i in r: print(i.select_one('.LC20lb').text) 저 같은 초보자에게 매우 도움이 되고 있습니다. 좋은 강의 감사합니다.
-
미해결실습 UI 개발로 배워보는 순수 javascript 와 VueJS 개발
export default에 대해 문의드립니다.
FormView.setup을 import해올 때, export 문 안에서 바로 호출하는 게 아니라 init 함수 안에서 호출하는 이유가 무엇일지 문의드립니다. 함수로 감싸지 않고 바로 호출하려고 할 때 안 되는 이유도 문의드립니다. 감사합니다.
-
미해결그로스해킹 - 데이터와 실험을 통해 성장하는 서비스를 만드는 방법
책 질문 드립니다.
첫 강의 때 말씀하셨던 린분석 책이 오래되어서 절판되었더군요. 혹시 말씀하신 책 두권 외 또 추천하실만한 책이 있으시나요?
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
spinner가 바로 꺼지는 이유
강의에서 axios 요청이 너무 빨라서 뜨지 않는다라고 설명해주셨는데, 이부분은이 잘못된거 같습니다. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/then // using a resolved promise, the 'then' block will be triggered instantly, // but its handlers will be triggered asynchronously as demonstrated by the console.logs const resolvedProm = Promise.resolve(33); let thenProm = resolvedProm.then(value => { console.log("this gets called after the end of the main stack. the value received and returned is: " + value); return value; }); // instantly logging the value of thenProm console.log(thenProm); mdn의 설명을 보면, promise가 resolve 된 이후, then() 메서드 안의 핸들러는 비동기적으로 호출 된다고 설명하고 있습니다. (복사붙여 넣기를 하니 포맷이 이상해져서 읽기 불편한점 죄송합니다) 그래서 테스트를 해보았습니다. //views/NewsView.vue created() { bus.$emit("start:spinner"); // setTimeout(() => { // }, 3000); this.$store.dispatch("FETCH_NEWS") .then(result => { bus.$emit("end:spinner"); console.log("result"); console.log(result); return result; }) .catch(err => { console.error(err); }); } //store/actions.js export default { FETCH_NEWS(context) { fetchNewsList() .then(res => { context.commit('SET_NEWS', res.data); console.log('actions'); console.log(res); return res; }) .catch(err => { console.error(err); }); }, } //api/index.js function fetchNewsList() { console.log('api call'); return axios.get(`${config.baseUrl}news/1.json`); } 이렇게 하니 콘솔창에 api call result undefined actions { data: .... } //result 객체 아마도 핸들러를 바로 처리하지 않고, 함수의 끝에 다다르게 되어서 흐름이 newsview로 넘어간것 같습니다. 그래서 spinne가 도는 시간(api를 부르고 가져오는시간)이 없어서 그런거 같습니다. 오히려 actions가 확실하게 promise를 리턴하는 방식을 하기위해서 return fetchNewsList().then(...) 과 같은 방식을 취하니 조금의 시간 동안 스패너가 보입니다.
-
미해결벡터 미적분학 시리즈1 - 미분 기초
Chain-Rule 부분 증명 과정에서 질문이 생겼습니다 :)
안녕하세요 선생님 :) 다변수함수의 연쇄법칙 증명하는 부분에서 에엥? 하는 부분이 생겼습니다. 강의에서 보면 55:50초 부분입니다. dh/dt를 (x, y, z 각각의 편미분계수) * (각 변수의 미분계수)의 합으로 분해하는 과정인데요 평균값정리에 의해서 나온 lim(round(f(c, y(t), z(t))) / round(x))가 왜 x(t0), y(t0), z(t0)에서 Evaluation된 x의 partial derivatives인지 모르겠습니다. x는 이미 특정 개구간 안의 c에 고정되고 y와 z만 t0 근처로 가게 될 텐데 저 limit가 왜 x(t0), y(t0), z(t0)에서 Evaluation된 x의 partial derivatives가 되는지 헷갈립니다 ㅎㅎㅎ Notaion 표기가 질문창에서는 어렵네요 ㅎㅎ 항상 성심성의껏 답변해주셔서 감사합니다. 즐거운 명절 보내셔요 :)