groupby를 사용하면 에러는 아니고 경고가 뜹니다. FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning. chatGPT: 이 경고는 Pandas의 value_counts() 메서드를 사용할 때 발생하는 것으로 보입니다. 이 경고는 현재 버전의 Pandas에서는 observed 매개변수의 기본값이 False 이지만, 향후 버전에서는 True 로 변경될 것이라는 것을 알려주는 것입니다. 즉, 향후에는 observed=False 를 명시적으로 지정하지 않으면 경고가 표시될 것입니다. 이러한 경고를 피하려면 value_counts() 를 호출할 때 observed=False 를 명시적으로 전달하면 됩니다. 예를 들어: import pandas as pd # 예제 데이터프레임 생성 df = pd.DataFrame({'Category': ['A', 'B', 'A', 'C', 'B', 'A']}) # value_counts() 호출 시 observed 매개변수 명시 counts = df['Category'].value_counts(observed=False) print(counts) 이렇게 하면 경고가 발생하지 않습니다. 하지만 향후 Pandas 버전에서는 이러한 변경이 기본 동작이 되므로 observed 매개변수를 사용하여 코드를 업데이트하는 것이 좋습니다. -> 근데 이게 무슨 말인지 모르겠습니다! 뭐... 대충 업데이트 할 건데, 오류가 생길 수 있으니 미리 대비를 해라~ 이런 거 같은데 정확히 무슨 뜻인지 모르겠습니다!
Tile( icon: 'language', title: S.current.language, subTitle: IntlHelper.isKo ? S.current.ko : S.current.en, onPressed: () => langService.toggleLang(), ) 안녕하세요. 강의 정말 큰 도움이 되고 있습니다! Lang Tile 구현에서 onPressed 콜백에서 context.watch <LangService>().toggleLang() 으로 쓰면 왜 에러가 나는건가요,,??(아래와 같은 에러가 발생합니다..) Tried to listen to a value exposed with provider, from outside of the widget tree. This is likely caused by an event handler (like a button's onPressed) that called Provider.of without passing listen: false . To fix, write: Provider.of<LangService>(context, listen: false); It is unsupported because may pointlessly rebuild the widget associated to the event handler, when the widget tree doesn't care about the value. The context used was: SettingBottomSheet(dependencies: [_InheritedProviderScope<LangService?>, _InheritedProviderScope<ThemeService?>]) 'package:provider/src/provider.dart': Failed assertion: line 274 pos 7: 'context.owner!.debugBuilding || listen == false || debugIsInInheritedProviderUpdate'
4강 마지막 끝날 때요 //stream 사용 위해 패키지 불러와서 써야 함 import 'dart:async'; void main() { playAllStream().listen((val){ print(val); }); } Stream<int> playAllStream() async* { //yield* 뒤에 따라오는 stream의 값이 다 return 될 때까지 기다린다. yield* calculate(1); yield* calculate(1000); } Stream<int> calculate(int number) async* { for(int i=0; i<5; i++){ yield i * number; //async* 로 await를 쓸 수 있다. await Future.delayed(Duration(seconds: 1)); } } playAllStream() 여기 안에 yield* 를 yield로 바꾸면 결과가 0 0 1 1000 2 2000 이렇게 나올거라고 하셨거든요. 이론적으로 이해는 됐는데, 코드 실행이 안되어서요. 어디서 문제인지 모르겠어요. 에러는 아래와 같습니다. Error: A value of type 'Stream<int>' can't be assigned to a variable of type 'int'. - 'Stream' is from 'dart:async'. yield calculate(1);
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요 코팩님! 이제 드디어 GoRouter에 대한 강의를 들으려고 합니다. 그런데 지금 GoRouter가 v13까지 업데이트 되어있네요 ㄷㄷ 혹시 GoRouter v13 추가로 강의하실 계획 있으신가요?? 그리고 제가 v13으로 강의를 듣고 코딩을 해도 크게 문제 없을까요?
기존 질문이 삭제되어 헷갈리실 다른 분들을 위해 자문자답 형태로 남겨둡니다. Python의 경우 어느 곳에서 다운로드 받느냐에 따라 다양한 경로에 다양한 버전이 생길 수 있습니다. 첨부해주신 사진을 봤을 때, /usr/bin/python3 를 통해 boto3를 import 하시려면, /usr/bin/pip3 를 통해 boto3를 다운로드 해주셔야 될 것 같습니다.( /usr/bin/python3 를 입력해서 실행했을 때와 python3 를 입력했을 때 버전을 비교해보시면 좋습니다.) 간단한 해결 방법으로는 /usr/bin/python3 가 아닌 그냥 python3 로 실행해주시면 될 것 같습니다. 만약 해결되지 않는다면, 현재 boto3가 설치된 경로에 있는 Python 실행 파일을 통해 파일을 실행해주시면 됩니다. 이런 번거로운 절차가 귀찮으시면, 1.3. Python 실행 단축키 설정 을 참고하셔서 실행 설정을 해주시고, vscode에서 cmd + shift + p 입력 후, Python: Select Interpreter 를 입력해주신 후에 실행하고 싶은 Python3 경로를 선택해주시면 됩니다. 또는, 우측 하단에 아래 그림과 같이 나오는 부분에서 버전을 클릭하시면 위 그림이 나오게 됩니다. 이후에는 cmd + enter 를 통해 쉽게 실행 가능합니다! 해보시고 안되시면 다시 말씀 부탁드리겠습니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요 올해부터 플러터를 열심히 공부하고자 하는 학생입니다. 이번강의에서 2가지 질문이 있습니다. 1번 질문. snapshot.data 타입 List<Schedule> 리스트 변수를 생성하고, snapshot.data 를 할당하려고하는데, snapshot.data 의 타입이 Object?라 할당할 수 없다고 나옵니다. print( snapshot.data .runtimeType)를 찍어보면 타입이 List<Schedule> 이라고 나오는데 왜 할당할 수 없는지 알고 싶습니다. 2번 질문. snapshot.data .where 질문 snapshot.data 의 타입이 object?로 인식되다보니, 아래와 같이 where 기능이 작동하지 않습니다. snapshot.data 타입을 List<Schedule>로 바꿀수 없나요?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type 'List<IModelWithId>' is not a subtype of type 'List<RatingModel>?' of 'data' #0 CursorPagination.copyWith (package:codefactory_lecture/common/model/cursor_pagination_model.dart:28:14) #1 Pagination.paginate (package:codefactory_lecture/common/provider/pagination_provider.dart:91:22) <asynchronous suspension> 이건 디테일 스크린에서 rating을 fetchmore로 더 불러올때 나는 에러입니다. [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type 'List<IModelWithId>' is not a subtype of type 'List<RestaurantModel>?' of 'data' #0 CursorPagination.copyWith (package:codefactory_lecture/common/model/cursor_pagination_model.dart:28:14) #1 Pagination.paginate (package:codefactory_lecture/common/provider/pagination_provider.dart:91:22) <asynchronous suspension> 그리고 이건 restaurant_screen.dart에서 쭉 내려서 데이터를 더 불러오려고 할 때 에러입니다. 둘 다 비슷한 에러입니다. state = resp.copyWith(data: [ ...pState.data, ...resp.data, ]); 페이지네이션 코드 중 이 부분에 문제가 있었고, CursorPagination copyWith({ CursorPaginationMeta? meta, List<T>? data, }) { return CursorPagination<T>( meta: meta ?? this.meta, data: data ?? this.data); } 여기서 List<T>? data의 타입이 맞지 않는 것 같습니다. 데이터 타입이 알맞게 각각 들어가야 할텐데, 자꾸 List<IModelWithId> 타입이 들어가는 거 같아요... 어느 부분을 고쳐야 할까요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
일단 콤마 기준으로 줄바꿈 하는 기능을 알고 있습니다. 아래 <A 코드>를 <B 코드>로 변환하는 IDE 기능이 혹시 있나 해서 여쭤봐요 (아니면 플러그인이라도..) <A 코드> ElevatedButton(onPressed: () {}, child: Text("ElevatedButton")), <B 코드> ElevatedButton( onPressed: () { }, child: Text( "ElevatedButton" ) ),
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요 다름이 아니라 업무시스템(예를들어 인사관리, 영업관리)을 개발하는데 프론트부분을 Vue가 아닌 플러터를 사용하여 개발하고 백엔드는 스프링부트이고 이런 조합으로 할려고 하는데 가능할까요? 플러터는 모바일 앱 개발에 최적화 되어 있는걸로 알고 있어서요? 답변부탁드립니다 ^^
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요. 코팩님 플러터 강의 잘 듣고 있습니다. 이번에 플러터 책 개정판이 나와 개정판이랑 병행하여 같이 공부하고 있습니다. 지금 블로그 웹 앱 프로젝트를 공부중인데, 강의와 완전히 동일한 앱을 만드는 것 같은데 강의에선 언급 안 해주신 부분이 있어서요. 책 p.200에서 android/app/src/main/AndroidManifest.xml 에 인터넷 권한을 추가하는 부분이 To do 표시가 되어있는데, 사실 강의에선 권한 추가 안하고도 웹 뷰 기능을 잘 구혔했는데, 권한 추가 한 것과 안 한 것의 차이가 무엇인지 궁금합니다. 에뮬레이터에선 권한이 딱히 필요없지만 배포할 땐 필요하고 그런건지... 그리고, 책 p. 200 내용에 android/app/src/main/AndroidManifest.xml 파일에서 package=~ 라고 쓰여있는 줄은 오타인가요? 파일에서 package 단어를 못 찾겠어서요.. 검색해봐서 어디다가 추가해야되는지는 알았습니다만, 오타인지가 궁금합니다. 플러터 버전은 3.13.9썼습니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
다른영상 불러와도 실행하기 전까지는 이전 영상의 음성이 계속 나옴니다. 즉, 영상 실행 하는 상태에서 다른 영상 불러오고, 실행 버튼 누르지 않았는데 음성은 이전 영상 음성이 나옵니다. 버그 같아서 올립니다 영상파일을 음성이 나오는 파일로 해보면 쉽게 알수 있습니다. 2번째는 음성이 아주 적게 들리고 있어서 음성 조절 기능 을 넣코 싶은데 어딜 바꾸면 조을까요.
안녕하세요. 좋은 강의 감사히 잘 들었습니다. 강의에서 궁금한 점이 있어서 질문 드립니다. 1) 첫 번째 질문 강의 제목 : 외부 파이썬 함수 수행하기 환경 구성 : macOS, Docker, Airflow 2.7 문의 내용 : 강의 초반에 언급한 환경변수로 설정하는 방법 상세 내용 : 강의 후반에 알려주신 내용은 방법을 이해했습니다. 다만 초반에 알려주신 항목 중 sys.path 는 명시적 구현이라 쉽게 가능했으나, 환경변수 쪽은 찾아봐도 쉽게 이해가 안 돼서 질문하게 됐습니다. 복습하면서 여러 방법을 알면 좋을 것 같아서 질문 드립니다. 2) 두 번째 질문 강의 제목 : 없음 환경 구성 : Docker 설치 시 생성하는 디렉터리 이외에 추가 디렉터리 생성 후 볼륨 마운트. 예를 들어 utils 라는 디렉터리를 생성 후 docker-compose.yaml 의 volumes 에 ${AIRFLOW_PROJ_DIR:-.}/utils:/opt/airflow/utils 를 추가 할 경우 문의 내용 : 추가로 디렉터리 생성할 경우 plugins 디렉터리 외에서 py 파일을 읽어야 하는 경우 상세 내용 : 첫 번째 질문과 유사하게 환경변수에 관한 질문일 것 같습니다. 새로운 디렉터리를 생성해서 작업할 때 경로를 인식 시켜야 하는데, sys.path 로만 하는 것은 번거로운 것 같아서 어떤 방식으로 접근을 하면 좋을지 조언을 듣고 싶습니다. 간략하게 정리하면 plugins 디렉터리 이외의 환경도 같이 사용을 하는 방법이 궁금합니다. 3) 세 번째 질문 강의 제목 : 없음 환경 구성 : 1, 2와 동일 문의 내용 : 새로운 패키지 설치 할 때 설치 방법 및 운영 관리 노하우 상세 내용 : docker compose 할 때 yaml 에 PIPADDITIONAL_REQUIREMENTS 부분에 설치할 패키지 목록을 입력해서 설치를 하고 있습니다. 이렇게 해도 되는 것 같긴한데, 나중에 더 많은 패키지를 설치하게 될 경우 좋지 않은 형태라고 생각이 들었습니다. 실제로 현업에서 업무를 하실 때 다양한 패키지를 어떤 식으로 설치 및 운영 관리 하시는지 궁금합니다. 감사합니다. 다른 강의도 기대하겠습니다.