unittest 기반의 Unit Test시 Celery 혹은 ProcessPoolExecutor을 이용하면 해당 Context에서 DB 접근 시, Test DB를 참조 하는 것이 아니라 settings의 Default로 설정해놓은 Exist DB에 접근하는 이슈가 있더군요. 해당하는 경우 어떻게 해야 Test DB로 붙어서 작업할 수 있을까요? with concurrent.futures.ProcessPoolExecutor() as executor:
수업 잘 듣고 있습니다. 자동화를 하고 싶으서 예전 영상 보다가 최근에 다시 올라와서 보는 중 강의 발견하고 바로 수강해서 듣고 있습니다. 궁금한 것이 하나 있는데요. 셀레니움에서 하나의 윈도우 창의 특정 태그 값을 찾아서 다른 윈도우 창을 오픈 한 후 특정 필드에 값을 넣을 수 있나요?
3.12강 강의 후반부에서 underflow를 설명하실 때 min값을 출력하려고 할 때 max를 출력할때와 다르게(max를 출력할 땐 printf에서 %f를 쓰셨는데) %e로 지정을 하셨습니다. 제가 %f로 출력할 땐 콘솔창에 값이 제대로 표현되지 않았는데 %e로 했을땐 제대로 표현되는 것을 볼 수 있었습니다. 혹시 이유를 알 수 있을까요? 제가 생각한 이유는 min값은 너무 작은 값이라서 f형으로 표현하기엔 너무 작아서 지수식 표현법을 사용해야 정밀도를 잃지 않고 표현한 것이라 생각이 드는데 맞을까요? //underflow float min = 1.401298464e-45F; printf("%e\n", min); // %f가 아니라 %e로 표현한다. min = min / 100.0f; printf("%e\n\n", min); //underflow가 발생해서 숫자가 날아간다.
안녕하세요. 양질의 강의 제공해 주셔서 정말 감사합니다. 강사님의 강의를 통해 배운 내용을 바탕으로 문제를 풀고 있는데 제가 공부하는 방식이 도움이 되는지, 너무 비효율적으로 공부하고 있는 것은 아닌지 싶어서 질문드립니다. 저는 평소에 문제를 풀다가 막히는 문제가 있으면, 최대한 머리로 고민해 보다가 머리가 돌아가지 않는다 싶으면 종이에 써가면서 어떻게 풀 수 있을지 고민해 봅니다. 30분에서 1시간 정도 고민해 보는 것 같습니다. 해결한 문제는 다른 코드와 제 코드를 비교해 보고 제가 짠 코드보다 다른 코드가 더 효율적이고 깔끔한 것 같다 싶으면 해당 코드를 노트에 정리해둡니다. 해결하지 못한 문제는 어떤 부분을 생각해 내지 못했는지를 답안이 되는 코드와 함께 노트에 정리해둡니다. 이렇게 정리한 코드들은 틈틈이 복기해 봅니다. 이런 식으로 공부하는 게 맞는 것인지 답변 부탁드립니다. 저번에 한 번 다른 질문을 남겼었는데 그 때 빠르게 답변 남겨주셔서 감사했습니다.
강의에서는 잘못 출력되는 예제중 첫번쨰 에서 n3가 1024가 아닌 다른 숫자가 나오는데요 (이 오류의 원인은 이해했습니다) 하지만 제가 따라하니 1024로 나옵니다. 혹시나 해서 x86으로 하니 강의처럼 오류가 뜨는데요 이전에 포인터의 크기와 관련해서 32비트와 64비트를 확인해보라는 답글을 주셔서 이 부분은 이해했는데 지금 부분은 왜 다른지 이해가 가지 않습니다. 답변 부탁드립니다.
안녕하세요 이번에 전자공학과로 전과를 하게된 2학년 학부생입니다. 전과가 안될줄알고 대비를 안하고 있었는데 이번에 전과가되어 문의드립니다. 이번학기에 당장 C++를 하게되는데요. 불나게 홍준모교수님의 따배씨를 듣고 있지만 이걸 그냥 이렇게 물흐르듯 듣고 가는게 의미가 있나 싶어서요,,, (중간에 이해가 안되도 그냥 넘어가고 그랬어요.) 그냥 C++을 넘어가면 많이 힘들까요? 아님그냥 C를 그냥 꼼꼼하게 보고 가야하는걸까요,,,,? 개강이 3주남았는데 C++을 수강하기 위해서 무엇을해야할까요 ㅠㅠ? 프로그래밍에 관해서는 백그라운드가 없는 상태입니다. 현재 홍준모 교수님 섹션 6강까지 듣고 있습니다. 밑에 수업계획 첨부해요ㅠㅠ
안녕하세요 선생님^^ 단항 증감연산에 대한 접근 강의를 보고 인터넷에서 좀더 찾아봤는데, 아래와 같은 코드가 있더라구요 int a = 3; int b = a-- + 3 + --a; cout << "a는 " << a << ", b는 " << b << '\n'; 일단 제 환경에서는 출력이 "a는 1, b는 7"로 나오는데, 위 코드는 시퀀스 포인트의 규칙을 위배하여 undefined behavior라고 하던데 사실인가요? 컴파일러들이 모든 ub를 예방해주는건 현실적으로 어려운 일인가요? 가끔보면 c/c++에서만 발생하지 않는 에러가 있더라구요... 예를 들어 index out of range같은 런타임 에러는 자바나 c#에선 볼 수 있지만 c/c++에선 볼 수가 없고 사실상 ub로 여겨지던데 왜 c/c++의 컴파일러들은 이러한 부분을 확인해주지 않는건가요? 항상 감사드립니다~~^^
32비트 구조에서 스택프레임은 메모리주소가 낮은주소로 쌓이고 0번지를 향해 증가하는데 ? 이유가 무엇인가요 ? 네이버 검색상으로는 스택프레임이 커널영역을 침범하지 않게하기위해서 라고 하는데, 그글 댓글에서 커널영역을 침범하지 않기위해서라는 설명은 틀린설명이라고 하는데 정확한 이유가 궁금합니다. 추가로 64비트 컴퓨터는 왜 32비트 구조랑 스택프레임구조가 왜 다른지궁금합니다. 그냥 설계된것은 아닌거같아서요
리눅스 환경에서 구조체내에 int a, b, c가 있고, 메인 영역에서 while상태로 함수1을 구조체로 포인터로 매개변수를 전달하여 함수 call을 하여 a,b에 접근하여 값을 바꿔준다 가정하고, 쓰레드를 열고 그 쓰레드 내 while상태로 함수2를 똑같은 구조체 포인터로 매개변수를 전달하여 함수call하여 c의 값을 바꿔준다고 가정하면 혹시 레이스 컨디션이 일어나나요?... 서로의 함수 1은 a,b, 2는 c만을 건들지만 궁금한 점은 구조체 전체의 값을 read하고 원하는 영역만 바꾸고 구조체 전체의 값을 write하게 된다면, 함수 1과 2의 레이스 컨디션이 일어나는건지 너무 궁금하네용.. 너무 두서없이 써서 죄송합니당..
안녕하세요. 그림부분에서 이해가 가지않아 질문 드립니다. a =[1,2,3] 으로 초기화를하면 array는 0,1,2 즉 배열 그림이 3칸([][][])만 있어야 하는게 아닌가요? 하지만 강의의 그림에서는 [1][2][3][][] 으로 0,1,2,3,4 까지 그려져 있습니다. (size가 3인데 말이죠) a.append(4) 를 했을때, 동적배열은 array로 구현이 돼어있기때문에 random access 가 가능하여 마지막 index를 찾을 수 있다고 하셨는데, 선언및 초기화 a = [1,2,3] // 그림 -> [1][2][3] 접근 a[0] // O(1) 수정 a[1] = 9 // 그림 [1],[9],[3] 추가 a.append(4) // 이때 Resizing 이 일어나 /* 그림 [1][9][3] // 값을 옮긴 후 삭제 [1][9][3][4][][] // 복잡도 O(n) */ 의 모양이 돼야하는게 아닌가요? 즉, 궁굼한 점은 선언 및 초기화 할때 배열의 size 는 3인데그림의 배열 size는 [][][][][] 5칸이냐는 것입니다.
안녕하세요. <Q1>포인터 질문 (예시) char *string = "abcdefg"; char **ptr = string; string과 ptr은 메모리 구조에서 스택에 쌓이지만, abcdefg는 상수로서 data segment(읽기전용)에 저장되는 것이 맞나요? 따라서, abcdefg를 다른 문자로 변경하지 못하는 것이라고 이해하였는데, 제대로 이해했는지 궁금합니다. 또한, "abcdefg"가 한 뭉텅이로 저장되어있어서, ptr이 배열처럼 abcdefg에서 a의 주소를 가리키는 것이 아니라 abcdefg 자체를 가리키고 있는 것이어서, ptr + 1을 해도 b에 접근하는 것이 아니라 정의되지 않은 어떠한 메모리 주소에 접근하는 것이라고 보면 될까요? <Q2> 구조체 질문 (예시) struct student { char* name; int score; }; int main() { struct student* my_student = (struct name*)malloc(sizeof(struct name*)); ... return 0; } 1. student->name이 의미하는 것은 '주소'인가요 주소를 통해 접근한 '값'인가요? 감사합니다~
int main() { char c; while((c = _getch()) != '\n') put char(c); return 0; } 이 코드를 디버그를 해보면 마지막에 enter를 누르면 종료가 되어야하는데 변수 c에 '/r' 가 들어가서 처음부분으로 돌아갑니다. 여기서 왜 enter을 누르면 /r가 입력이 되는건가요? getchar같은 경우에는 디버그를 해보니까 \n가 들어가더라고요 근데 _getch()는 \r가 왜 들어가는지 모르겠네요
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다) - 이외의 문의등은 평생강의이므로 양해를 부탁드립니다 - 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다 - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. <div class="layer_body" data-translation="true"> <p>금융당국이 급증하는 가계부채 증가세를 막기 위해 아파트 잔금대출에도 소득을 따져 대출한도를 정하는 총부채상환비율(DTI)을 적용하는 방안을 유력하게 검토하고 있다.</p> <p>지금은 집값을 기준으로 대출한도를 매기는 주택담보인정비율(LTV) 규제만 적용돼 소득이 없어도 집값의 70%를 빌려 잔금을 치르는 게 가능하다.</p> <p>앞으로 잔금대출에 DTI가 적용되면 소득이 없는 사람은 집값의 70% 대출 받는 게 어려워진다.</p> </div> 안녕하세요. 지금 강의 중인 내용에 보면 class의 div 값과 다르게 2개의 값이 연이어 나오는데요. 이런 경우에는 어떻게 입력하면 될까요? 복사해서 넣어보고 했는데 계속 오류가 뜹니다. import requests from bs4 import BeautifulSoup res = requests.get(' https://v.daum.net/v/20170615203441266 ') soup = BeautifulSoup(res.content,'html.parser') mydata = soup.find_all('div','layer_body' data-translation='true') mydata.get_text() 이런식으로 연달아서 넣으면 되는건지... 답변 부탁드려요^^
안녕하세요 강의 잘 듣고 있습니다! 분류결정 임곗값에 대해서 강의를 들을땐 잘 이해가 됐었는데 복습하면서 정리하다보니 제가 잘 이해가 안되는 부분이 있어 질문드립니다. 예를 들어, 분류 결정 임곗값이 0.3까지 낮아졌다고 할 때 pred_proba array에서 [0.49, 0.51] 이런 식으로 나온 경우 결국 0이나, 1이나 둘 다 임곗값은 넘었는데 어떤 걸로 예측하나요? 임곗값을 0.5로 설정했을땐 이럴 일이 없겠지만 임곗값을 낮췄을 때 어떻게 분류가 되는지 궁금합니다. 확률 간의 비교를 해서 더 높은 확률로 분류를 하는지 아니면 단순히 둘 다 넘었을 땐 positive로 분류하는 건지 알고싶습니다! 감사합니다.