파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
선생님 안녕하세요 좋은 강의 감사합니다. 수업자료 3-3 io multi-threading.py 관련해서 질문 있습니다. 만약 fetcher 함수가 끝이 있는 함수가 아니라 while 문으로 계속 도는 (다른) 함수라고 가정하고, ThreadPoolExecutor 를 통해 2개 이상의 스레드에서 함수들을 돌린다고 했을 때 파이썬 스크립트 파일을 실행시키면 ctrl+c 를 눌러도 종료가 안되는데, 이건 왜 이러는 것이죠? 그리고 ctrl+c 를 통해 종료를 하게 하려면 어떻게 코드를 수정해야 하는지도 설명 부탁드립니다.
강사님 설명 열심히 듣고 있는 수강생입니다. 예제를 따라 하다 보니 제 환경에서는 안되는 부분이 있어서 확인해보았습니다. 저는 pydantic 2.8.2를 사용하고 있더군요 pydantic 2.8.2에서는 dict() 메소드가 더 이상 사용되지 않으며 대신 model_dump()를 사용 한다고 합니다 from fastapi import FastAPI from pydantic import BaseModel app = FastAPI() class Item(BaseModel): # Pydantic 모델 정의 name: str price: float is_offer: bool = None @app.post("/items/") def create_item(item: Item): #return {"item": item.dict()} # Pydantic v2.x부터 dict()->model_dump()로 변경 return {"item": item.model_dump()} # Pydantic 모델을 API에 사용 사용 버전에 따라 다른 것 같아서 혹시나 올려봅니다
public T Load<T>(string key) where T : Object; //ResourceManager.Load<T>(string)은 abstract, eatern또는 partial로 표시되어 있지 않으므로 본문을 선언해야 합니다 라고 뜨는데 어떤 선언문을 써야 하나요? { //','와' )'가 필요하다고 오류가 뜨는데 어디가 필요한 건지 궁금합니다 그리고 TryGetValue 와 key가 현재 컨텍스트에 없다고 에러가 뜨는데 어떻게 해결해야 하나요? if (_resources.TryGetValue(01Key, out Object resource)) //';'가 필요하다는 에러가뜨고 T도 현재 컨텍스트에 없다고 에러가 나옵니다 return resource as T; return null; } GameObject Instantiate(string key, Transform parent = null, bool pooling = false) { GameObject prefab = Load<GameObject>(key); if (prefab == null) { Debug.LogError($"Failed to load prefab : {key}"); return null; } //if (pooling) // return Managers.Pool.Pop(prefab); GameObject go = Object.Instantiate(prefab, parent); go.name = prefab.name; return go; } 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS1031 형식이 필요합니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 17 활성 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS8124 튜플에는 요소가 두 개 이상 있어야 합니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 17 활성 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS1519 클래스, 레코드, 구조체 또는 인터페이스 멤버 선언에 잘못된 토큰 '{'이(가) 있습니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 16 활성 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS1519 클래스, 레코드, 구조체 또는 인터페이스 멤버 선언에 잘못된 토큰 '{'이(가) 있습니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 16 활성 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS1519 클래스, 레코드, 구조체 또는 인터페이스 멤버 선언에 잘못된 토큰 'as'이(가) 있습니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 18 활성 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS1519 클래스, 레코드, 구조체 또는 인터페이스 멤버 선언에 잘못된 토큰 ';'이(가) 있습니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 18 활성 심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보 오류 CS8803 최상위 문은 네임스페이스 및 형식 선언 앞에 와야 합니다. Assembly-CSharp C:\Users\Administrator\Desktop\taein]\MMO\mmorpg\Assets\@Scripts\Managers\Core\ResourceManager.cs 23 활성 그리고 void LoadAsync<T>(string key, Action<T> callback = null) where T : UnityEngine.Object { //Cache if (_resources.TryGetValue(key, out Object resource)) { callback?.Invoke(resource as T); return; } string loadkey = key; if (key.Contains(".sprite")) loadkey = $"{key}[{key.Replace(".sprite", "")}]"; var asyncOperation = Addressables.LoadAssetAsync<T>(loadkey); asyncOperation.Completed += (op) => { _resources.Add(key, op.Result); _handles.Add(key, asyncOperation); callback?.Invoke(op.Result); }; 앞에와 마찬가지로 resources 와 handles가 계속 이름이 현재 컨텍스트에 없다고 에러가 뜹니다 어떻게 해결해야 하나요?
안녕하세요, 강의를 듣고 계신 여러분! 여러분의 학습을 돕기 위해 질문 안내를 드리고자 합니다. 위치를 데스크톱에 두었는데 cmd+b로 빌드를 해봐도 결과값이 안 나옵니다..! 1. chatGPT를 이용해보기 단순한 의문은 chatGPT를 이용해도 해답을 찾을 수 있는 경우가 종종 있습니다! 2. 강의의 어떤 부분에 대한 질문이고, 어떤 부분이 궁금한지 명확히 알려주세요! 강의의 어느 파트에서 의문을 느끼고, 어떤 부분이 궁금한지 를 명확히 제시해 주시면 답변에 도움이 됩니다! 자신은 어떻게 이해했는지 또한 적어주면 좋습니다! ex) 섹션5의 '그래프 순회 (DFS & BFS) [개념]' 강의 에서 DFS와 BFS 모두 그래프의 모든 노드를 탐색하는 알고리즘이라고 하셨고 시간 복잡도 또한 똑같다고 이해 했습니다. 그러면 DFS와 BFS 중에서 어떤 알고리즘이 더 효율적인지 구별하는 것은 의미가 없는 것일까요? 어느 파트 섹션5의 '그래프 순회 (DFS & BFS) [개념]' 강의 자신은 어떻게 이해했는지 DFS와 BFS 모두 그래프의 모든 노드를 탐색하는 알고리즘이라고 하셨고 시간 복잡도 또한 똑같다고 이해 어떤 부분이 궁금한지 DFS와 BFS 중에서 어떤 알고리즘이 더 효율적인지 구별하는 것은 의미가 없는 것일까요?
'검색 결과가 나열된 페이지'에서는 잘 동작하는데, '(링크 타고 들어간) 상세 페이지'에서는 내용물이 안 뽑혀나오네요. 사실 원인은 찾았습니다만, 똑같이 해메는 분이 나올 것 같아서 작성합니다(?). (** AI한테 물어봄) (response로 긁어온 html 결과를 갖다주고) 물어보니 방어기법 맞다네요 0w0...
Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)
아래와 같은 타입에러가 발생했습니다. 데이터베이스와 todoDto모두 설정 및 정상적으로 가져온거 같은데요 마우스를 올려보고 에러내용도 확인해보면 타입은 다 같게 설정되어있는거 같습니다. 타입자체를 비교해서 대입 하려해도 에러가나오네요.. 플러그인을 통해서 시각화해서 좀 더 자세하게 머가 문제인지 비교해봐도 타입이 같습니다.. 혹시 뭐가 문제인지 알 수 있을까요?...
안녕하세요, 문제를 푸는 도중에 갑자기 궁금증이 생겨 질문 드립니다. 4779 재귀문제를 푸는데, 예제 출력을 분석하지 않은? 상태에서 문제만 가지고 직관적으로 문제를 해결하려 했습니다. 먼저 선을 만들고, 선을 3으로 나누면서 몫이 0이 되면 선을 리턴하고, 그렇지 않으면 계속 나누는 방법을 생각했습니다. def cantor(n): line = '-' * (3 ** n) def divide(part): if len(part) == 1: return part N = len(part) // 3 return divide(part[:N]) + ' ' * N + divide(part[-N:]) return divide(line) n = int(input()) result = cantor(n) print(result) 강의에서는 예제 출력을 보고 케이스마다 공백이 있는 것을 확인하여 공백에 3^(k-1)을 넣어줘서 푸셨는데, func() + 공백 + func() 형식으로 recursive case를 푸는 방법은 전혀 생각이 안났습니다. 경험이 많이 없어서 강의대로 푸는 방법이나 스킬을 익혀야 하는지, 아니면 직관적으로 푸는게 좋은지 궁금합니다. 직관적으로 푸는게 나쁜건 아닌데 강의대로 푸는게 더 구현이 편한 것 같기도 해서 질문드려요. 좋은 강의 감사드립니다 🙂
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요. '크롤링을 위한 지식: Open API 쉽게 사용하는 방법' 강의를 듣고 질문 드립니다. 아래사 진처럼 웹주소 기입하고 헤더의 키와 밸류에 각각 클라이언트 아이디랑 비밀번호 기입했는데 다음과 같은 오류 메세지가 떴습니다. Q데이터를 가져오는데 뭐가문제일까요>
안녕하세요. 선생님의 2D 플렛포머 게임 강의 3 - 1과 관련하여 질문이 있어서 남깁니다. StageData.cs 코드를 작성 후 Project의 + 를 클릭하면 Stage라는 버튼이 떠야되는데 밑에와 같은 문구가 뜨면서 활성화가 되지 않는 현상이 일어납니다. 이런 경우 어떻게 해결해야되는지 알 수 있을가요? CreateAssetMenu attribute on StageData will be ignored as StageData is not derived from ScriptableObject. UnityEditor.AttributeHelper:ExtractCreateAssetMenuItems ()
강의 11분 53분 지점에서 EventSystem을 찾는 부분에서 코드를 작성할때 강의대로 따라가며 Object obj = GameObject.FindObjectOfType(typeof(EventSystem)); 코드를 작성했는데 비주얼스튜디오에서 빨간줄 녹색줄 노란줄이 화려하게 난무하고 유니티에서도 널크러시가 나서요. 비주얼스튜디오에서 잠재적수정사항으로 FindObjectOfType() 가 아니라 FindAnyObjectByType()를 사용하라고 권장해서 일단 임의로 비주얼스튜디오가 하라는대로 FindAnyObjectByType()를 사용하여 코드를 작성했습니다. 비주얼스듀디오가 권장한 대로 수정한 후에 문제가 발생하지 않아 그냥 이대로 진행해 보려고 합니다만 왜 FindObjectOfType()사용에서 널크러시가 발생한 것인지 의문이 생겨서요. 구글링 결과 두 함수 사이에 성능의 차이가 있다는 글을 찾았는데 단순히 성능차이때문에 널크러시가 나지는 않을듯 하고 제가 사용하는 유니티와 비주얼스튜디오의 버전차이 때문인지 아니면 제가 이전에 작성한 코드에 문제가 있어 수정이 필요한 사항인지 궁금해서 문의드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 마지막 2차원 ndarray 인덱싱 자료화면(11분 경)에서 마지막 6번째 인덱싱 결과가 1차원이라고 하셨는데 Index 1이 1개, index 0이 2개인 (2,1) 의 2차원으로 봐야 하는 것 아닌지 질문 드립니다
n,k = map(int, input().split()) data = list(map(int, input().split())) m = int(input()) cnt = 0 def dfs(l,s,c): global cnt if l == n: if c == k: if s % m == 0: cnt += 1 return dfs(l+1,s+data[l],c+1) dfs(l + 1, s, c) dfs(0,0,0) print(cnt) 이렇게 풀어도 되나요?