강의보면서 똑같이 no2 = air_quality[air_quality['parameter'] == 'no2'] 입력하니까 오류가 아래처럼 나오는데 어떻게 하나요? --------------------------------------------------------------------------- KeyError Traceback (most recent call last) /usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance) 3801 try: -> 3802 return self._engine.get_loc(casted_key) 3803 except KeyError as err: 4 frames pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item() pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item() KeyError: 'parameter' The above exception was the direct cause of the following exception: KeyError Traceback (most recent call last) /usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance) 3802 return self._engine.get_loc(casted_key) 3803 except KeyError as err: -> 3804 raise KeyError(key) from err 3805 except TypeError: 3806 # If we have a listlike key, _check_indexing_error will raise KeyError: 'parameter'
1번은 제가 혼자 구현한 코드, 2번은 강의를 참고해서 로직을 살짝 바꾼 코드입니다. http://boj.kr/93dd64e4fe984863b6e61f8a7916e40c http://boj.kr/5a252acbbd6a450d92e338eeacc9a8ab 강의에서는 visited를 매번 초기화하여 사용하였는데, 제 1번 코드에서는 visited를 초기화하지 않고 dp처럼 방문 가능 노드 갯수 값을 저장한 뒤 해당 값이 있으면 재귀함수를 수행하지 않고 바로 값을 가져오도록 하였습니다. 이렇게 하면 2번보다 당연히 시간이 빠를 것이라 생각했는데 오히려 1번이 시간초과가 발생하고 2번이 정답 처리되었습니다. 2번 방식은 visited가 매번 초기화되기 때문에 같은 값을 여러 번 계산하게 되고 1번은 childCount하나당 단 한 번만 계산하는데 속도가 더 느린 이유가 무엇인가요? 지금까지는 별 질문 없이 잘 풀다가 원래도 어려워했던 그래프에 도착하니 막히는 부분이 많아져서 질문을 부득이하게 여러 개 올리게 되었네요...도움 부탁드립니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 혹시 tailwind color generator가 정상적으로 작동 안되시는 분들은 tailwind css color generator 한번 사용해 보세요!
const unsigned num_data = 10; ofs.write((char*)&num_data, sizeof(num_data)); for (int i = 0; i < num_data; ++i) ofs.write((char*)&i, sizeof(i)); 여기서 같은 write함수인데,,, 위에꺼는 그냥 파일공간만 확보하는 건가요? 아래꺼는 실제로 쓰는거구요? 이 부분이 너무 이해가 안되네요... ofs.write((char*)&num_data, sizeof(num_data));<- 이라인이 하는 역할을 잘 모르겠네요... 같은 맥락에서 ifs.read ((char*)&num_data, sizeof(num_data)); <- 이 라인의 역할과 처음 num_data를 0으로 초기화 시켜서 이 변수가 디버그를 돌려보니 10으로 바뀌더라고요.. 어떻게 해서 그렇게 되는건지.. ifs.read ((char*)&num, sizeof(num));<- 이줄은 그럼 그 다음 주소로부터 4바이트씩 읽어오는 것인지.. 아니면 메모리에 이만한 공간을 할당하는 과정인지 궁금하네요..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 9:37에서 @RequestBody를 생략하는 경우 @ModelAttribute가 자동으로 입력이 되지만 setAge함수가 없기 때문에 age 설정이 되지 않는다고 설명해주셨습니다. 근데 Lombok의 @Data를 설정하면 getter와 setter를 자동으로 만들어 주는 것으로 배웠는데 왜 호출이 되지 않는 건가요??
char str3[20] = "Hello,\0World"; char str3[20] = "Hello, \0World"; printf("%c\n", str3[10]); 의 값이 , 바로뒤에\0를 치면 l이고 , 하고 한 칸 띄고 \0을 치면 r입니다. h = 0번째 e = 1번째 ... , = 5번째 \0 = 6번째 W = 7번째 o = 8번째 r = 9번째 l = 10번째 d = 11번째 중간에 띄워쓰기도 공백으로서 자릿수를 차지해서 위와 같은 결과가 나오는 걸까요?
안녕하세요 강의 정말 잘보고있습니다!! 쿠키의 수명이 30일인데 만약 토큰의 세션값(UUID)이 탈취된다면 해당방식에선 어떻게 대응할수있을까요? httpOnly나 Secure옵션 등으로인해 현실적으로 탈취는 쉽지않을것이다.. 로만 생각하기엔 뭔가 찝찝한부분이 있는것같은데 제가 놓치고있는부분이 있을까요?? 또한 호돌님이 생각하시는 해당강의에서 다뤘던 쿠키에 세션토큰을 담아서 인증하는 방식의 단점이 궁금합니다!!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 현재 프론트와 백앤드로 나눠서 프로젝트를 진행중입니다. swagger를 강의를 참고하여 적용중인데, 다음과 같이 문서화가 되지 않고있습니다. @Configuration @EnableSwagger2 @EnableAsync @EnableWebMvc public class SwaggerConfig implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("swagger-ui.html") .addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**") .addResourceLocations("classpath:/META-INF/resources/webjars/"); } @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .select() // ApiSelectorBuilder 생성 .apis(RequestHandlerSelectors.basePackage("com.example.petree.domain")) // API 패키지 경로 todo 패키지 경로 수정 .paths(PathSelectors.ant("domain/**/controller/**")) // path 조건에 따라서 API 문서화 todo API 경로 수정 .build() .apiInfo(apiInfo()) // API 문서에 대한 정보 추가 .useDefaultResponseMessages(false) // swagger에서 제공하는 기본 응답 코드 설명 제거 .securityContexts(Arrays.asList(securityContext())) .securitySchemes(Arrays.asList(apiKey())) ; } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("API 문서") .description("API에 대해서 설명해주는 문서입니다.") .version("1.0") .build(); } private SecurityContext securityContext() { return SecurityContext.builder() .securityReferences(defaultAuth()) .build(); } private List<SecurityReference> defaultAuth() { AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything"); AuthorizationScope[] authorizationScopes = new AuthorizationScope[1]; authorizationScopes[0] = authorizationScope; return Arrays.asList(new SecurityReference("Authorization", authorizationScopes)); } private ApiKey apiKey() { return new ApiKey("Authorization", "Authorization", "header"); } } 위는 저희 프로젝트의 패키지경로입니다. 무엇이 문제인가요..? 혹시 몰라 SecurityConfig도 올려보겠습니다..