본문 바로가기
반응형

🍃 Language54

[Python] 코딩테스트에 자주쓰이는 함수 (정렬, 문자열, 숫자, 리스트 ) 내장함수 sum/min/max sorted(객체, key= ,reverse=True) : 내림차순으로 정렬 reversed(객체) : reversed객체 result = sorted([("홍길동", 35), ("이순신", 75), ("아무개", 50), key = lambda x: x[1], reverse=True) # [('이순신', 75), ('아무개', 50), ('홍길동', 35)] 문자열(str) str.isalnum() : 알파벳 또는 숫자로 이루어져있는지, 특수문자들어가면 False (ex: a2A -True, 1&A- False) str.isalpha() : 모두 알파벳으로만 되어 있는지, 알파벳 아닌게 하나라도 있으면 False str.isdigit() : 모두 숫자로만 되어 있는지 , .. 2021. 5. 18.
[Python] 큐(Queue), 스택(Stack) 큐 먼저 넣은 데이터를 가장 먼저 꺼내는 데이터 구조 FIFO(First-in, First-out: 선입선출) 또는 LILO(Last-in, Last-Out)방식 어떤걸 할 수 있는가? Enqueue : 큐에 데이터 넣기, python list의 append()와 같음 Dequeue : 큐에서 데이터 꺼내기, python list의 pop()과 같음 사용하기 스택 먼저 넣은 데이터를 가장 나중에 꺼내는 데이터 구조. LIFO(Last-in, First-Out)방식 어떤걸 할 수 있는가? push() : 스택에 데이터 넣기, python list의 append()와 같음 pop() : 스택에서 데이터 꺼내기, python list의 pop()과 같음 장점은 ? 구조가 단순하고, 구현이 쉽다. 데이터를 저장.. 2021. 5. 15.
[Python] 해쉬(Hash Table) 간단용어 해쉬 : 임의 값을 고정길이로 변환하는 것 해쉬함수 : 특정연산을 이용하여 키 값을 받아서 value를 가진 공간의 주소로 바꾸어주는 함수 해쉬테이블 : 해쉬구조를 사용하는 데이터구조 해쉬값 : key값을 해쉬함수에 넣어서 얻은 주소값. 슬롯 : 한개의 데이터를 저장할 수 있는 공간(아래에선 buckets) 해쉬구조 Key와 Value 쌍으로 이루어진 데이터구조 Key를 이용해서 데이터를 찾아서 속도를 빠르게 만드는 구조 파이썬에서는? '딕셔너리 타입'이 해쉬테이블과 같은 구조 언제 사용하는가? 검색이 많이 필요한경우, 저장/삭제/읽기가 많은 경우, 캐쉬를 구현할 경우 장점은? 데이터저장/검색 속도가 빠르다 키에 대한 데이터 중복확인이 쉽다. 단점은? 저장공간이 좀더 많이 필요하다 여러 키에 대.. 2021. 5. 15.
[Python] Intellij에서 Flask시작하기 | Flask Template Config추가 추가로 웹단 구현이 필요해서 flask를 사용하기로 했다. 그런데 지금은 웹이 아닌 back단을 실행하기 위해서 python run을 하고 있었다. 그럼 어떻게 같은 프로젝트 파일에서 Flask도 실행할 수 있을까? RUN/Debug Configuration을 추가한다. 이때, 인텔리제이에서는 '템플릿'을 제공한다. 아래의 여러가지 프레임워크를 기반으로 코드를 실행할 수 있는 것이다. 그중에서 flask를 선택하고, 새로운 config를 만들었다. 이때 app.py는 Flask앱을 시작해주는 코드라고 보면 된다. 일단 hello world부터 시작해보자. 이렇게 하나의 짧은 코드만으로도 웹프로그램이 하나가 완성된다. 코드를 설명하면, 처음에 Flask라는 클래스를 가져온다. 그리고, Flask 클래스의 .. 2021. 5. 11.
[Python] 셀레니움(Selenium) NoSuchElementException 에러 셀레니움으로 크롤링하는데 접근하려는 요소가 존재하지 않을때 발생 대상 페이지가 서버와 통신이 계속적으로 진행되는 동적페이지거나, 크롤링을 원하는 요소가 html내에 존재하지도 않는데 접근하려고 할때 workingwithpython.com/selenium-waits/ 셀레니움(Selenium)에서 대기(Waits)하기 - 크롤링을 위한 파이썬(Python) 파이썬으로 셀레니움 크롤링을 할 때 NoSuchElementException에러가 발생할 수 있습니다. 이러한 경우 셀레니움에서 접근하고자 하는 요소가 생성될 때까지 대기(Waits)하여 에러를 방지할 수 있습니다. workingwithpython.com 현재 리다이렉션 페이지에서 허가버튼을 누르려고 xpath를 가져오는데 오류발생 # authentic.. 2021. 4. 15.
[Spring] 어노테이션 @Autowired @PostMapping @ReqeustBody 2021.04.07 - [Spring] 어노테이션(Annotation)이란? | Bean이란? @Autowired @PostMapping @ReqeustBody request Body내용이 null일떄? the-dev.tistory.com/21 [디버깅] @RequestBody로 받은 json데이터가 null일 때 해결 방법 안녕하세요. 개발개입니다. 이번 글에서는 Spring/SpringBoot로 API 개발 과정에서 오류가 없는 것 같은데 @RequestBody 애노테이션으로 받은 json 데이터가 비어있을 때 확인해 볼 부분을 알아보도록 하 the-dev.tistory.com 2ssue.github.io/programming/json-and-requestBody/ @RequestBody도 잘 작성했.. 2021. 4. 13.
[Spring] Spring vs Spring boot Spring이란? 정확하겐 스프링 프레임워크이다. 대표적인 java 프레임워크 스프링 프레임워크(Spring Framework)는 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 간단히 스프링(Spring)이라고도 불린다. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다. 대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준프레임워크의 기반 기술로서 쓰이고 있다. 즉, 개발자가 코드 안에 애플리케이션 동작에 대한 내용을 기술하면 스프링 프레임워크가 이를 해석해서 동작하는 것이다. 개발자들에게 겨울은 끝나고 봄(spring)이 온다! 개발자들이 어플리케이션을 조금 더 쉽게 구현할 수 있도록 도와주기 위해서 탄생했다. - Dependecy ingection(D.. 2021. 4. 8.
[Spring] 어노테이션(Annotation)이란? | Bean이란? Annotation이란? 사전적 의미로는 '주석', 자바에선 특별한 의미를 담은 주석. 즉, 자바코드에 주석처럼 달아 프로그램에게 추가적인 정보를 제공해주는 메.타.데.이.터 자바나 스프링이 제공해주는 것도 있고,사용자가 직접 만들수도 있다. 어노테이션은 왜 사용하는가? - 컴파일러에게 코드작성 문버벵러를 체크하도록 정보제공 - 빌드나 배치시 코드 자동으로 생성할 수 있도록 정보제공 - 코드실행시 특정기능을 실행할 수 있도록 정보제공 대표적인 어노테이션 1. @Component vs @Bean @Component : 개발자가 직접 작성한 Class를 Bean으로 등록할떄 사용 컴포넌트에 대한 추가정보가 없으면 class이름을 camelCase로 변경한것이 Bean ID로 사용 @Component에 val.. 2021. 4. 7.
[Spring] 스프링 프로젝트 디렉토리 구조(maven vs gradle) 스프링 프로젝트를 구성할때 가끔 고민되는 부분이 있다. 메이븐(maven)과 그래들(gradle)이다. 안드로이드 개발할때 언뜻 gradle을 보긴했지만 늘 모르는 채로 넘어가서 이참에 찾아보았다. 공통점 일다 둘다 빌드관리 툴이다. 빌드란 단순한 소스코드파일을 실행가능한 소프트웨어 산출물으로 만드는 과정이다. 소스코드파일에는 자바코드뿐만 아니라 그 안에 사용하는 다른 라이브러리도 있을 것이다. 이떄 그 라이브러리들도 컴파일하고, 패키징하는 과정을 빌드라한다. 컴파일은 컴퓨터가 이해할 수 있는 기계어로 번역하는 작업이다. 자바의 경우 자바가상머신(JVM)에서 실행가능한 바이트코드 형태인 클래스파일을 만든다. 빌드툴은 프로젝트를 진행하면서 라이브러리버전을 동기화하기 위해서 등장했다. Maven이란? 초기에.. 2021. 4. 7.
[Java] Spring Initializr로 스프링프로젝트 hello world 시작하기 Spring initializr란? spring에서 제공하는 spring initializr 웹도구를 사용해서 스트링프로젝트를 만드는 방법이다. 어떻게 사용하지?! 1.웹접속 https://start.spring.io/ 2021. 4. 5.
728x90