inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

배열길이 부분에 질문있어요

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

8:29초 부분입니다. b=a[:3] 이면 배열주소 0123을 출력하는게 아니라 3까지(012) 라고 봐야하는건가요? c=a[4:6]도 마찬가지로 45까지만 출력하는건가요?

  • python
  • java
  • c
  • 정보처리기사
주서 댓글 1 좋아요 0 조회수 220

djlint 편집시 무한 동작

미해결

파이썬/장고로 결제 시작하기 (Feat. 아임포트) - 기본편

사진과 같이 편집할 때 마다 djlint가 계속 검사합니다ㅠㅠ black은 처음엔 그러다가 자동 저장 설정 변경한 뒤부터 안 그러는데 djlint의 경우는 자동저장을 바꾸고 감시기 설정 체크 모두 해제해도 1바이트의 글자만 입력해도 자동 감시를 시작하는군요ㅠㅠ 혹시 아시는 바가 있을까요... 지피티가 해결을 못 해주어서 1시간이 넘게 고생하는 중입니다ㅠㅠ...

  • python
  • django
KANG HOJUN 댓글 1 좋아요 0 조회수 149

04-02-graphql-mutation

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

api 요청하기를 눌러도 콘솔창에 아무것도 안떠요

  • react
  • node.js
  • seo
  • graphql
  • next.js
imhj11777 댓글 2 좋아요 0 조회수 146

Supabase Storage .emptyFolderPlaceholder 이슈 (슬랙)

해결됨

[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)

https://github.com/supabase/storage/issues/207 모든 파일을 제거했을 때 갑자기 .emptyFolderPlaceholder가 파일 리스트에 나오는 문제입니다. 슬랙에 올라온 질문인데 같은 이슈를 겪는 분들이 종종 계실 것 같아 인프런 커뮤니티에도 해결책을 공유드립니다.

  • firebase
  • next.js
  • tailwind-css
  • react-query
  • supabase
로펀 댓글 1 좋아요 0 조회수 186

react-query 무한스크롤 staleTime caching 질문 (슬랙)

해결됨

[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)

Slack에 올라온 질문이 좋아서 인프런 커뮤니티에도 공유드립니다.

  • firebase
  • next.js
  • tailwind-css
  • react-query
  • supabase
  • staletime
  • cache
로펀 댓글 1 좋아요 1 조회수 177

2장 클론 코딩시 화면 하단에 회색 영역이 생김니다.

미해결

Next + React Query로 SNS 서비스 만들기

강좌와 git을 보면서 했는데, 왜 아래에 회색영역이 생기는 건지 잘 모르겠습니다.ㅜㅜ 세로로 생기는 스크롤도 흰색영역에만 생깁니다. 그런데 로그아웃버튼은 회색영역에 생기네요 이리저리 해봐도 잘 모르겠어서 도움을 요청합니다

  • react
  • next.js
  • react-query
  • next-auth
  • msw
슈퍼아스라다 댓글 1 좋아요 0 조회수 146

서로 다른 컴포넌트간 query 일치하게 하기 강의중

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세여 제로초님 UserInfo에서 팔로우버튼을 누르면 팔로잉으로 변해야되고 다시 한번 누르면 팔로우로 변해야되는데 버튼을 누르고 새로고침을 해야지만 반영이됩니다... 팔로우 추천에서는 바로 반영이 되는데.... 깃허브 ch3-2 UserInfo에 있는 코드로 가져다 써도 안되네여 ㅠㅠ "use client"; import style from "@/app/(afterLogin)/[username]/profile.module.css"; import BackButton from "@/app/(afterLogin)/_component/BackButton"; import { useQuery, useQueryClient, useMutation } from "@tanstack/react-query"; import { User } from "@/model/User"; import { getUser } from "@/app/(afterLogin)/[username]/_lib/getUser"; import cx from "classnames"; import { MouseEventHandler } from "react"; import { Session } from "@auth/core/types"; type Props = { username: string; session: Session | null; }; export default function UserInfo({ username, session }: Props) { const { data: user, error } = useQuery< User, Object, User, [_1: string, _2: string] >({ queryKey: ["users", username], queryFn: getUser, staleTime: 60 * 1000, // fresh -> stale, 5분이라는 기준 gcTime: 300 * 1000, }); const queryClient = useQueryClient(); const follow = useMutation({ mutationFn: (userId: string) => { console.log("follow", userId); return fetch( `${process.env.NEXT_PUBLIC_BASE_URL}/api/users/${userId}/follow`, { credentials: "include", method: "post", } ); }, onMutate(userId: string) { const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); if (index > -1) { console.log(value, userId, index); const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: [{ id: session?.user?.email as string }], _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers + 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow: User = { ...value2, Followers: [{ id: session?.user?.email as string }], _count: { ...value2._count, Followers: value2._count?.Followers + 1, }, }; queryClient.setQueryData(["users", userId], shallow); } }, onError(error, userId: string) { console.error(error); const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); console.log(value, userId, index); if (index > -1) { const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: shallow[index].Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers - 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow = { ...value2, Followers: value2.Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...value2._count, Followers: value2._count?.Followers - 1, }, }; queryClient.setQueryData(["users", userId], shallow); } } }, }); const unfollow = useMutation({ mutationFn: (userId: string) => { console.log("unfollow", userId); return fetch( `${process.env.NEXT_PUBLIC_BASE_URL}/api/users/${userId}/follow`, { credentials: "include", method: "delete", } ); }, onMutate(userId: string) { const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); console.log(value, userId, index); if (index > -1) { const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: shallow[index].Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers - 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow = { ...value2, Followers: value2.Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...value2._count, Followers: value2._count?.Followers - 1, }, }; queryClient.setQueryData(["users", userId], shallow); } } }, onError(error, userId: string) { console.error(error); const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); console.log(value, userId, index); if (index > -1) { const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: [{ id: session?.user?.email as string }], _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers + 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow = { ...value2, Followers: [{ userId: session?.user?.email as string }], _count: { ...value2._count, Followers: value2._count?.Followers + 1, }, }; queryClient.setQueryData(["users", userId], shallow); } }, }); console.log("error"); console.dir(error); if (error) { return ( <> <div className={style.header}> <BackButton /> <h3 className={style.headerTitle}>프로필</h3> </div> <div className={style.userZone}> <div className={style.userImage}></div> <div className={style.userName}> <div>@{username}</div> </div> </div> <div style={{ height: 100, alignItems: "center", fontSize: 31, fontWeight: "bold", justifyContent: "center", display: "flex", }} > 계정이 존재하지 않음 </div> </> ); } if (!user) { return null; } const followed = user.Followers?.find((v) => v.id === session?.user?.email); console.log(session?.user?.email, followed); const onFollow: MouseEventHandler<HTMLButtonElement> = (e) => { e.stopPropagation(); e.preventDefault(); console.log("follow", followed, user.id); if (followed) { unfollow.mutate(user.id); } else { follow.mutate(user.id); } }; return ( <> <div className={style.header}> <BackButton /> <h3 className={style.headerTitle}>{user.nickname}</h3> </div> <div className={style.userZone}> <div className={style.userRow}> <div className={style.userImage}> <img src={user.image} alt={user.id} /> </div> <div className={style.userName}> <div>{user.nickname}</div> <div>@{user.id}</div> </div> {user.id !== session?.user?.email && ( <button onClick={onFollow} className={cx(style.followButton, followed && style.followed)} > {followed ? "팔로잉" : "팔로우"} </button> )} </div> <div className={style.userFollower}> <div>{user._count.Followers} 팔로워</div> &nbsp; <div>{user._count.Followings} 팔로우 중</div> </div> </div> </> ); } 제가 보기에는 useQuery가 제대로 작동안하는거같은데...제로초님 의견이 궁금합니다 팔로우버튼 안눌렀을때 팔로우버튼 눌렀을때

  • react
  • next.js
  • react-query
  • next-auth
  • msw
장산 댓글 2 좋아요 0 조회수 235

수업 때 쓰셨던 txt file 공유 해주시면 좋겠습니다

해결됨

실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지

나라 이름, 도시 같은 것들은 영상 아래 강의 노트에서 복붙할 수 있으면 좋겠네요 원활한 답변을 위해, 자세한 질문 사항 부탁드려요 :D

  • python
  • 알고리즘
minsu2587 댓글 1 좋아요 1 조회수 189

강의 자료 다운로드 자료요청

미해결

평생 써먹는 데이터 기반 투자법 with 파이썬 퀀트 투자

안녕하세요. 저도 강의자료를 다운로드하면 압축파일에 requirement.txt 파일만 나오고 다른 파일들은 보이지 않습니다. 앞에서 문의한 분처럼 저도 이메일로 보내주시면 감사하겠습니다. kimv100@gmail.com 감사합니다.

  • python
  • pandas
  • 투자
  • 퀀트
김승백 댓글 2 좋아요 0 조회수 235

업캐스팅 강의 마지막 예제 관련 질문입니다.

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

내가 나를 낳은 형태에서 예제와 같이 special draw를 호출하면 오류가 나지 않을까요??

  • python
  • java
  • c
  • 정보처리기사
유호영 댓글 2 좋아요 0 조회수 142

다음 강의로 넘어 가지를 않습니다.

미해결

김대리님 이게 바로 업무 자동화입니다 (엑셀 + 파이썬)

혹시, 하루에 들을 수 있는 강의 수가 정해져 있는지요? 4번째 강의(회사별 행 끊어내기) 강의가 끝난 후 아래 이미지의 "다음 수업보기"를 클릭해도 강의가 진행되지 않습니다. (4번째 강의 듣는 것만 3~4번 해봤는데 그 이후에 역시 안됩니다.) 그리고 이상한 것은 아래 이미지 처럼 제가 듣지 않은 강의가 체크 되어 있습니다. (심지어 마지막 강의도 체크되어 있네요.) 강의를 계속 들으려면 어떻게 해야 하는지 방법 부탁 드립니다.

  • python
  • excel
김동근 댓글 3 좋아요 0 조회수 248

강의문의드려요

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야 어떤 강좌에서 질문하셨는지 알 수 있습니다. 영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다. 이미 다른 누군가가 질문을 한 이력 이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다. 학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다. 제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다. 시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산) 질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요. 정처기 비전공자인데요 섹션1 설명듣고 섹션2듣는데 계속 문제만 풀던데요 아무 개념이없이 복합문제 푸는 느낌이 들어서요 섹션3에 있는 c언어, 자바, 파이썬 강의듣고 섹션2를 들어야 하는거죠?

  • python
  • java
  • c
  • 정보처리기사
박창현 댓글 1 좋아요 0 조회수 242

예제문제 추가 쿼리 질문

미해결

[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]

안녕하세요 공부하다가 쿼리에 추가해보고 싶은게 생겨서 질문드립니다! 예2: 서브카테코리가 '여성신발'인 상품중 할인가격이 가장 높은 상품의 할인가격 가져오기 이 문제에 정석 답변이라면 MAX(dis_price) 컬럼만 도출될텐데요! 앞에다가 해당 상품명 title을 추가해서 총 두 개의 컬럼이 나오게끔 만들어보려다가 막혀서 질문드립니다. 원래는 99000짜리 하나만 나와야하는데 밑에 쿼리로 하니까 여러개가 나와서요 ㅠㅠ 여러개가 나온 이유는 알거같아요 타이틀을 그룹바이해서 그 그룹별로 제일 높은 가격이 도출된 것 같은데 그건 제가 원하는 답은 아니어서요! 맥스 디스 프라이스를 가진 아이템코드의 타이틀을 어떻게 해야 효과적으로 도출할 수 있나요? SELECT title, MAX(dis_price) FROM items JOIN ranking on items.item_code = ranking.item_code WHERE sub_category = "여성신발" group by title;

  • python
  • sql
  • mysql
  • dbms/rdbms
  • 데이터-엔지니어링
dmsal0544 댓글 2 좋아요 0 조회수 224

putty 관련 질문

미해결

파이썬으로 장고(Django) 공략하기: 입문

안녕하세요. ppt에 나와있는대로 putty 접속을 시도하는데, Unable to use certificate file (PuTTY SSH-2 private key) 이런 메세지가 뜨면서 안됩니다. 해결방법이 있을까요?

  • python
  • django
Ji Hyeon Ko 댓글 1 좋아요 0 조회수 223

튜플 89번 문제 질문

미해결

[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

튜플 89번 코드 전체에서 quot, rem = quot_and_rem(3, 10)만 떼서 다음 셀에서 따로 실행해주고 quot를 실행하면 0이 나오는데 rem은 실행하면 어떤 결과도 나오지 않는데요 혹시 89번 코드처럼 def quot_and_rem(x, y): quot = x // y rem = x % y return quot, rem quot, rem = quot_and_rem(3, 10)을 한 셀에 실행해야 되어야 하는지, 위에 def값을 선언했기 때문에 제가 실행한 대로 따로 셀에 quot, rem = quot_and_rem을 실행하면 안되는 이유가 있을까요? 감사합니다~

  • python
  • 웹-크롤링
lse8189 댓글 1 좋아요 0 조회수 121

로딩에 대한 질문

미해결

Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)

현재 투두 페이지에서 새로고침을 하면 empty -> loading -> todolist 보여짐 이렇게 되는데, loading -> empty loading -> todolist 와 같이 로딩 후에 데이터가 없으면 empty가 보여지고, 데이터가 있으면 todolist가 보여지는 구조로 가야하지 않나요?

  • react
  • 클론코딩
  • next.js
  • supabase
Malik KIM 댓글 1 좋아요 1 조회수 214

분류 성능이 잘 안 나오는 이유

미해결

[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지

안녕하세요 강사님.. 제가 일주일이 넘는 기간 동안 계속 이것저것 시도를 해봤음에도 왜 분류 성능이 10%인지를 모르겠어서 실례를 무릅쓰고 질문을 올리게 되었습니다.. cifar10 이미지가 32 크기여서 128 정도로만 rescale을 했고, normalize도 진행했음에도 계속 성능이 10%대이고, loss는 줄어들었다가 갑자기 튀기도 하면서.. 제대로 학습이 되고 있지 않은 것 같습니다ㅠㅠ 바쁘시겠지만 문제의 원인이 무엇인지 여쭤보고 싶습니다ㅠㅠ 감사합니다.. https://drive.google.com/file/d/1FEsv1dex9y9I4AFqX42gBIhVeeOcgQXQ/view?usp=sharing

  • python
  • 머신러닝
  • 딥러닝
  • 인공신경망
  • pytorch
댓글 1 좋아요 0 조회수 241

StockListing 함수 직접 만들기 (22년 1월 이후 FinanceDataReader의 StockListing 함수 결과값이 달라짐) 강의편에서 크롤링 함수 오류가 납니다.

미해결

퀀트 투자를 위한 파이썬 트레이딩룸 만들기 - Part 1

알려주신대로, def StockListing() : import requests import pandas as pd import json try : from pandas import json_normalize except importError: from pandas.io.json import json_normalize data = {'bld':'dbms/comm/finder/finder_stkisu', 'locale':'ko_KR',} r = requests.post('http://data.krx.co.kr/comm/bldAttendant/getjsondata.cmd', data=data) jo = json.loads(r.text) df = json_normalize(jo,'block1') df_info = df[['short_code', 'codeName']] df_info.columns = ['Symbol','Name'] return df_info df = StockListing() JSONDecodeError Traceback (most recent call last) ~\AppData\Local\Temp\ipykernel_3876\2969629370.py in <module> 19 df_info.columns = ['Symbol','Name'] 20 return df_info ---> 21 df = StockListing() ~\AppData\Local\Temp\ipykernel_3876\2969629370.py in StockListing() 13 14 r = requests.post('http://data.krx.co.kr/comm/bldAttendant/getjsondata.cmd', data=data) ---> 15 jo = json.loads(r.text) 16 df = json_normalize(jo,'block1') 17 df_info = df[['short_code', 'codeName']] ~\anaconda3\lib\json\__init__.py in loads(s, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw) 344 parse_int is None and parse_float is None and 345 parse_constant is None and object_pairs_hook is None and not kw): --> 346 return _default_decoder.decode(s) 347 if cls is None: 348 cls = JSONDecoder ~\anaconda3\lib\json\decoder.py in decode(self, s, _w) 335 336 """ --> 337 obj, end = self.raw_decode(s, idx=_w(s, 0).end()) 338 end = _w(s, end).end() 339 if end != len(s): ~\anaconda3\lib\json\decoder.py in raw_decode(self, s, idx) 353 obj, end = self.scan_once(s, idx) 354 except StopIteration as err: --> 355 raise JSONDecodeError("Expecting value", s, err.value) from None 356 return obj, end JSONDecodeError: Expecting value: line 16 column 3 (char 36) 이런 오류가 나는데, 어떻게 해결해야 할까요?

  • python
  • 함수형-프로그래밍
  • 차트분석
  • 퀀트
an207 댓글 1 좋아요 0 조회수 420

tailwind

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요 선생님. 요즘 기업 트렌드에 맞게 tailwind로 진행해보려고 하는데 강의 css 참고하면서 저 만의 방법으로 tailwind로 수정해서 진행해도 상관없겠죠! 혹시 css로 진행한 이유가 있을까요? 요즘 기업에선 tailwind를 더 추구하나요? 저는 tailwind가 더 익숙하더라구요.. 유튜브에서 우연히 제로초 개발자님을 뵙게되어, 제로초의 JS교재와 함께 큰 도움이 되어서 인프런 강의까지 듣게됐네요. 감사합니다!

  • react
  • next.js
  • react-query
  • next-auth
  • msw
Eunwoo 댓글 3 좋아요 0 조회수 427

인기 태그

인프런 TOP Writers

주간 인기글