리스트 관련 강의를 듣다 모르는 점이 있어서 문의 드립니다 list_a=[3,2,1,4] list_b=list_a.sort print(list_a,list_b)라고 명령을 했을때 왜 list_b는 None이 뜨는 것이며 list_a는 갑자기 왜 정렬되는 건지 모르겠습니다. sort가 return이 없는 함수라서 이미 a를 정렬했기 때문에 list_a는 [1,2,3,4]라고 나온다고 치면, 왜 list_b는 None으로 나오는지 이해가 안됩니다. 답변 부탁드립니다
스프링 프로젝트들을보면 패키지명을 controller, dto, repository 이런단위로 만들고 관련클래스 파일을 모아놓는식으로 사용하는걸 많이 봤는데요, 강좌에서는 events, accounts 도메인(?) 단위로 만드셨잖아요. 현업에서도 이렇게 사용을 많이 할까요? 이렇게 구성시는 이유? 좋은점은 뭘까요?
'''def delete_a_list_element(list_data, element_value):''' '''result = []''' '''for i in range(len(list_data)):''' '''if not list_data[i] in element_value:''' '''result.append(list_data[i])''' '''if len(result) == 0:''' '''result.append(0)''' '''return result''' 이런 식으로 코드를 작성 했는데 테스트를 해보면 출력은 맞게 잘 되는데 과재를 재출하면 틀렸다고 뜨는데 이유를 알수있을까요..?
한번더 질문 드립니다. import sys import io import urllib.request as dw from urllib.parse import urlencode sys.stdout=io.TextIOWrapper(sys.stdout.detach(),encoding=’utf-8′) sys.stderr=io.TextIOWrapper(sys.stderr.detach(),encoding=’utf-8′) N_bannerUrl1=" https://nv.veta.naver.com/fxshow " value1={ ‘su’:’SU10079′ } value2={ ‘calp’:’1′ } value3={ ‘nrefreshx’:’1′ } param1=urlencode(value1) param2=urlencode(value2) param3=urlencode(value3) Naver_bannerUrl1=N_bannerUrl1+’?’+param1+’&’+param2+’&’+param3 print(Naver_bannerUrl1) savePath1="d:/Web crowling study/section2/naver_banner1.jpg" reqData1=dw.urlopen(Naver_bannerUrl1).read() with open(savePath1,’wb’) as savefile1: savefile1.write(reqData1) Naver_bannerUrl2=" https://ssl.pstatic.net/tveta/libs/1226/1226129/0744cf34170d945cfd3f_20190118132726901.jpg " savePath2="d:/Web crowling study/section2/naver_banner2.jpg" reqData2=dw.urlopen(N_bannerUrl2).read() with open(savePath2,’wb’) as savefile2: savefile2.write(reqData2) print("다운로드완료!") 서버측에서 변경되는 타이밍에 가져와서 빈 이미지 파일이 생성되는것 같다고 하셨는데 위 코드에서 네이버 왼쪽 베너 즉 Naver_bannerUrl1 경우에 직접jpg Url이 아닌 상위 url을 이용해서 왼쪽베너가 갱신되면 , 코드를 실행하였을 때 갱신된 이미지를 저장할 것이라고 생각했습니다. 왼쪽 베너는 브라우저를 보고있을 때 갱신 속도가 아주 느려서 같은 이미지가 왼쪽 베너에 오래동안 유지됩니다. 이럴경우는 우연히 서버측에서 변경되는 타이밍에 가져와서 그런것은 아니지 않나요? 이미지가 변경되는 타이밍에 저장이되서 그렇다면 이미지 갱신주기가 매우 짧아서 그 주기와 저장시기가 맞아야 하는것이라고 생각이들어서 다시 여쭤봅니다. 또 섹션 2에서 selenium 수업이 없는것 같습니다. beautifulsoup 강의는 있습니다.
''' java.lang.AssertionError: Expecting an empty Optional but was containing value: com.sj.datajpa.account.Account@cd6c6a5b . at com.sj.datajpa.account.AccountRepositoryTest.di(AccountRepositoryTest.java:48) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.springframework.test.context.junit4.statements.RunBeforeTestExecutionCallbacks.evaluate(RunBeforeTestExecutionCallbacks.java:74) at org.springframework.test.context.junit4.statements.RunAfterTestExecutionCallbacks.evaluate(RunAfterTestExecutionCallbacks.java:84) at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75) at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86) at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:251) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68) at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47) at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70) '''
안녕하세요 재미있게 강의를 수강중입니다. 첫번째 과제에서 질문이있습니다. import sys import io import urllib.request as dw from urllib.parse import urlencode sys.stdout=io.TextIOWrapper(sys.stdout.detach(),encoding='utf-8') sys.stderr=io.TextIOWrapper(sys.stderr.detach(),encoding='utf-8') N_bannerUrl1=" https://nv.veta.naver.com/fxshow " value1={ 'su':'SU10079' } value2={ 'calp':'1' } value3={ 'nrefreshx':'1' } param1=urlencode(value1) param2=urlencode(value2) param3=urlencode(value3) Naver_bannerUrl1=N_bannerUrl1+'?'+param1+'&'+param2+'&'+param3 print(Naver_bannerUrl1) savePath1="d:/Web crowling study/section2/naver_banner1.jpg" reqData1=dw.urlopen(Naver_bannerUrl1).read() with open(savePath1,'wb') as savefile1: savefile1.write(reqData1) Naver_bannerUrl2=" https://ssl.pstatic.net/tveta/libs/1226/1226129/0744cf34170d945cfd3f_20190118132726901.jpg " savePath2="d:/Web crowling study/section2/naver_banner2.jpg" reqData2=dw.urlopen(N_bannerUrl2).read() with open(savePath2,'wb') as savefile2: savefile2.write(reqData2) print("다운로드완료!") 다음과 같이 코딩을 하였습니다 왼쪽 베너를 Naver_bannerUrl1 오른쪽 베너를 Naver_bannerUrl2 로 설정했습니다. 오른쪽 배너 같은경우 해당부분 jpg url을 그대로 가져와서 저장시키니 제대로 저장이 되었습니다. 그러나 새로고침후 바뀐 사진이 당연히 저장이 안됩니다. 그래서 왼쪽 배너 같은경우 jpg url이 아닌 보다 상위 베너url을 가져와 위와 같이 코딩했습니다. 그런데 jpg확장자로 저장은되나 파일을 열면 그림이 나오지 않고 데이터가 없습니다. 왜그런지 알 수 있을까요?
부모 클래스에서 m_value 같은 변수를 private로 두고 자식클래스에서 GetValue() SetValue()와 같은 함수로 접근하는 방법에 대해 궁금한게 있습니다. 일단 이런식으로 우회해서 멤버 변수에 접근하는 이유가 무엇인가요?? SetValue()나 GetValue()하나를 막는다면 읽기만 하거나 쓰기만 하는것으로 이해 할 수 있는데, 둘 다 사용이 가능하다면 m_value에 직접 접근하는것과의 차이가 있을까요 ?
componentDidCatch() 부분에서 저는 크로쓰 오리진 에러가 뜨네요... A cross-origin error was thrown. React doesn't have access to the actual error object in development. See https://fb.me/react-crossorigin-error for more information. 뭐가 문제인지 알 수 있을까요? (코드 https://codesandbox.io/s/5klql536vk )
AppData/Local/Android/sdk/tools 에보면 ddms.bat 파일이 없구요 그리고 methods com.android.insecurebankv2.ChangePassword 명령어 읿력하면 valid id or class name 이라고 뜨네요 빠른답변 부탁드립니다
signed short, signed int, signed long 등등 설명하실 때 16bit --> 4byte 32bit --> 8byte 64bit --> 16byte 라고 설명을 하셨는데, 8bit가 1byte라면 16bit --> 2byte 32bit --> 4byte 64bit --> 8byte 이게 맞는거 아닌가요...? 17분 32초 부터 설명하시는 부분은 "float는 int와 똑같은 사이즈를 갖는다"하셨는데 int가 16bit라고 써있는데 float는 32bit를 차지한다고 하셔서 혼란스럽습니다. 제가 C공부를 할때 임베디드 시스템에서는 아직 8bit/16bit코어를 많이 쓰기 때문에 int가 2byte를 차지하고, 우리가 흔히쓰는 데스크탑이나 노트북같은 컴퓨터는 int가 4byte 를 차지한다고 알고 있긴합니다.
@Transactional(readOnly = true) 속성에 대해서 질문이 있습니다. 기본 Isolation Level 설정은 데이터베이스의 default 속성을 따라가게 되는걸로 알고 있습니다. 만약 mysql을 사용한다면 REPEATABLE_READ level을 택하지만 @Transactional(readOnly = true) 을 설정하면 Isolation level이 READE_UNCOMMITED 으로 변경되서 성능상의 이점이 있다는 것으로 이해했습니다. 제가 이해한것이 맞을까요?