본문 바로가기

Back-End/Python

(30)
[프로그래머스] 코딩테스트 Lv.1 추억점수 자바 알아둬야 할 개념 1. HashMap : HashMap은 Map 인터페이스를 상속하고 있기에 Map의 성질을 그대로 가지고 있고, Map은 키와 값으로 구성된 Entry객체를 저장하는 구조를 가지고 있는 자료구조이다. 2. int[숫자] answer : 숫자 길이만큼의 정수 값이 들어가 있는 배열 import java.util.*; class Solution { public int[] solution(String[] name, int[] yearning, String[][] photo) { int[] answer = new int[photo.length] ; HashMap map = new HashMap(); for(int i = 0; i
[프로그래머스] 코딩테스트 Lv.1 덧칠하기 문제 어느 학교에 페인트가 칠해진 길이가 n미터인 벽이 있습니다. 벽에 동아리 · 학회 홍보나 회사 채용 공고 포스터 등을 게시하기 위해 테이프로 붙였다가 철거할 때 떼는 일이 많고 그 과정에서 페인트가 벗겨지곤 합니다. 페인트가 벗겨진 벽이 보기 흉해져 학교는 벽에 페인트를 덧칠하기로 했습니다. 넓은 벽 전체에 페인트를 새로 칠하는 대신, 구역을 나누어 일부만 페인트를 새로 칠 함으로써 예산을 아끼려 합니다. 이를 위해 벽을 1미터 길이의 구역 n개로 나누고, 각 구역에 왼쪽부터 순서대로 1번부터 n번까지 번호를 붙였습니다. 그리고 페인트를 다시 칠해야 할 구역들을 정했습니다. 벽에 페인트를 칠하는 롤러의 길이는 m미터이고, 롤러로 벽에 페인트를 한 번 칠하는 규칙은 다음과 같습니다. 롤러가 벽에서 벗..
[Python] 파이썬 실습2 - 회원전용 도서관리 키오스크 만들기 : 회원 번호는 문자열 무엇이든 상관없이 등록 : 서비스 종료 시 프로그램 자체 종료 [서비스 이용을 위한 회원 인증] 1. 회원번호 등록 2. 회원 인증 3. 서비스 종료 : 도서 정보 : 도서번호, 도서제목, 재고권수 : 도서 상태 확인 : 특정 도서에 대한 정보 조회(도서번호, 도서제목, 현재권수/전체권수) [도서 서비스 메뉴] 1. 도서 입고 2. 도서 대출 3. 도서 반납 4. 도서 상태 확인 5. 도서 전체 목록 확인 6. 도서 서비스 종료(회원 인증 메뉴로 갑니다.) 저번에 한 코드를 더 발전시켜보았다. 1. 유저정보 등록 함수 : user_register() - user_id 값 입력 - users 리스트 생성 후 값 넣기(append) 2. 유저인증 함수 : user_check() - 입..
[Python] 파이썬 알고리즘 - 이터레이터(Iterator), readLine(), nextLine() 이터레이터(Iterator) 파이썬에서 반복 가능한 객체(클래스)를 표현하는 데 사용되는 인터페이스 __iter__() : 이터레이터 객체 자체를 반환 __next__() : 다음 요소를 반환, 더 이상 반환할 요소가 없으면 raise StopIteration 예외를 발생시켜 순회를 종료 이터레이터는 init() 함수와 next() 함수를 이용하여 반복(Iterator)을 수행함 이터레이터 기능은 반복문(for or while)을 사용해야만 작동하는 기능 최초 __iter__() 함수를 호출하고, 출력 시 __next__() 함수가 한번씩 수행하면서 값을 반환받아서 출력함 한번 반환된 후 메모리는 초기화되며, 다음 반복시 다시 메모리 사용 메모리를 효율적으로 활용할 수 있음 java의 readLine()..
[Python] 파이썬 알고리즘 - 제너레이터(Generator) 제너레이터(Generator) 함수를 이용해서 이터레이터(반복)의 기능을 구현 이터레이터와 동일하게 호출 시점에만 메모리를 사용하고 사용이 끝나면 소멸된다. 반환할 때 사용하는 명령어는 return이 아닌, yield를 사용한다. 이터레이터와 동일하게 전체 또는 next() 한건씩 출력 가능 메모리를 효율적으로 쓰고 싶을 때 사용(보통 시스템 구축할 때 많이 사용) 이터레이터(클래스 기반), 제너레이터(함수 기반) def simple_generator(): ### 첫번째 반환할 값 yield 1 ### 두번째 반환할 값 yield 2 ### 세번째 반환할 값 yield 3 제너레이터 전체 출력하기 - 제너레이터에서는 함수를 객체로 인지하고 사용한다. - 함수를 생성한다는 의미 ..
[Python] 파이썬의 기초 - 매개변수, 기본값(default) 1. 위치 매개변수를 사용하는 함수 매개변수 : 어떤 값이 들어갈지 모르는 변수 인자 : 함수안에 들어가는 값 a는 첫번째 위치에 들어가는 위치매개변수 b는 두번째 위치에 들어가는 위치 매개변수 def function1(a, b): print(a, b) function1(1 , 2) 결과 1 2 2. 기본값(default) 정의 매개변수를 사용하는 함수 단, 기본값이 첫번째 매개변수 자리에 오면 오류!!! 둘 다 기본값이면 상관 없음. def function2(a, b=3): print(a, b) function2(5) 결과 5 3 3. 키워드 정의 방식(함수 호출 방식) : 이때는 매개변수 위치 바뀌어도 적용 def function3(a, b): print(a, b) function3(a=3, b=5)..
파이썬 실습2 - 도서 입고/대출/반납 관리를 위한 키오스크 만들기 (데코레이터) class 클래스 명: def decorator_function1(): def wrapper(): @decorator_function1 def 매입함수 def decorator_function2(): def wrapper(): @decorator_function2 def 대출함수 def decorator_function3(): def wrapper(): @decorator_function3 def 반납함수 class LibraryKiosk: #초기생성자 def __init__(self): #books는 맴버변수 self.books = {} print('클래스 생성 되었습니다.') #------------------------------------------------------- ..
[Python] 파이썬 알고리즘 - 유니코드, 클로저(closure), 데코레이터 컴퓨터의 기본저장단위 : 바이트(Byte) = 8bit * 따라서 1Byte에는 1bit는 0,1 두가지 값을 포함하므로 총 2^8(=256)개의 값 저장 가능 * 문자인코딩(Encording) : 문자나 기호의 집합을 컴퓨터에 저장하거나, 통신목적으로 사용하는 경우 부호로 변환 아스키 (ASCII) 미국에서 정의한 부호체계의 표준 아스키코드는 8비트를 모두 사용하는 것이 아니라 7bit(128개)의 값만 사용 나머지 1비트는 통신에러 검출을위해 사용하기 때문이다 = Parity Bit 이는 '영문 키보드'로 입력할 수 있는 모든 가능성을 담았지만, 다른 언어를 표현하기에는 부족 따라서 8bit를 모두 사용한 ANSI코드 출현 하지만 전 세계 문자를 정의하기엔 부족하여 등장한 것이 Unicode다. 유니..