본문 바로가기

728x90
반응형

분류 전체보기

(340)
exit와 sys.exit은 무슨 차이일까 ? HTML 삽입 미리보기할 수 없는 소스 개요 exit와 sys.exit 두 가지 함수는 Python에서 프로그램을 종료시키기 위한 용도로 사용한다. 그런데 왜 프로그램을 강제 종료하는 기능을 가지는 함수가 두 가지나 있을까? 1. 공통점 : 둘 다 SystemExit를 발생시킨다. 공통점은 SystemExit Exception을 발생시킨다. 코드로 설명하자면 다음과 같다. # builtin - exit() try: exit(1) except SystemExit as e: print(e.args) # Result # (1,) import sys try: sys.exit(1) except SystemExit as e: print(e.args) # Result # (1,) 어려운 코드가 아니니 구체적으로 설명..
[Django] auth_group 다루기 Group?Django의 migrate를 실행하게 되면 Django 설정에 의해 auth_group, xxx_groups, auth_group_permissions라는 테이블이 생성되는 것을 알 수 있는데 이번 포스팅은 이 세 테이블에 데이터를 추가하려면 어떻게 해야 되는지 정리한 글이다. auth_group위 테이블은 Django User Model에 생성된 데이터 즉, 사용자를 그룹으로 묶어주는 역할을 하는 테이블이다. 기본적으로 정의된 필드는 다음과 같다.Field|Type |Null|Key|Default|Extra |-----+------------+----+---+-------+--------------+id |int(11) |NO |PRI| |..
[Programmers] 평행 Description 점 네 개의 좌표를 담은 이차원 배열 dots가 다음과 같이 매개변수로 주어집니다. [[x1, y1], [x2, y2], [x3, y3], [x4, y4]] 주어진 네 개의 점을 두 개씩 연결했을 때, 두 직선이 평행이 되는 경우가 있으면 1을 없으면 0을 return 하도록 solution 함수를 완성해보세요. Solve 문제를 읽었을 때 두 점 사이의 거리구나 하면서 직선의 방정식 어쩌고 가 불현듯 떠올랐다. 언제 배웠는지도 잘 기억 안 나는 내용이라 관련된 내용을 찾아보니 직선의 위치가 y의 기울기에 따라 "평행", "일치", "수직", "한 점에서 만난다"라는 조건이 있어서 이에 해당하는 조건을 코드로 구현하면 통과하겠거니 했는데 예상과 달랐다. 처음 생각했던 접근법은 단순히..
Redis, Persistence - AOF Persistence? Persistenc는 영속성이라고 하며, 데이터를 생성한 프로그램의 실행이 종료되더라도 사라지지 않는 특성을 말한다. Redis는 데이터를 in-memory에 저장하기 때문에 전원이 꺼지면 모든 데이터가 삭제한다. 이러한 문제를 해결하기 위해 메모리에 저장되어 있는 Redis의 데이터를 디스크로 백업하는 기능을 지원하며 이러한 기능에는 AOF와 RDB 방식이 존재한다. persistence 관련 설정을 확인하는 명령어는 다음과 같다. redis:6379> info persistence AOF, Append Only File AOF는 입력, 수정, 삭제의 명령을 실행할 때마다 파일에 기록되는 방식을 뜻한다. 기록되는 파일은 텍스트 파일 형식이기 때문에 수정이 가능하다. 파일에 계속 ..
[Snippet] 정수의 자리 수 구하기 Description 아래 코드는 Python에서 정수의 자리 수 구하기에 사용될 수 있는 코드 모음이다. While loop 을 이용한 방식 arr = 299 while arr != 0: divide = arr % 10 print(divide) arr //= 10 # result # 9 # 9 # 2 list와 str 를 이용한 방식 arr = 299 print(list(str(arr))) # result # ['2', '9', '9'] join과 slicing을 이용한 방식 arr = 299 print(' '.join(str(arr)[0:len(str(arr)):1]) # result # 2 9 9 While loop를 이용한 방식 - 자리수만 줄여가나기 n = 100 while n: print(n)..
[Programmers] 7의 갯수 구하기 Description 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요. 입력 : [7, 77,17] 출력: 4 Solve 입력받은 리스트에서 원소를 하나씩 꺼내서 정수의 자리수별로 쪼갠 다음 각 자리수가 7로 나누어 떨어지는지를 검사해서 푸는 방법으로 접근했다. 주요 포인트는 7로 나눈다는 개념을 체크할 때 발생하는 상황은 7을 7로 나눠도 0이고 0을 7로 나눠도 0이라는 점이다 그러니 각 자리의 수가 0일때는 continue를 걸어 count를 하지 말아야 했다. Code def solution(array): counter = 0 for arr in array: while arr ..
[Programmers] 옹알이 - 다시 풀어보기 Description https://jakpentest.tistory.com/228d [Programmers] 옹알이 Description 머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못합니다. 문자열 배열 babb jakpentest.tistory.com 에서 다른 해결 방법은 없을까 생각해서 시도하게 되었다. 풀이 방법 위에 첨부한 링크 내용 중에서도 알 수 있듯 문제를 처음 풀었을 때는 단순하게 가능한 모든 경우의 수를 고려하고 그 안에서 매칭 되는 게 있으면 counter를 올리는 방식으로 풀었다. 이 풀이 방법은 단순하고 직관적이라 생각했는데 공간을 너무 낭..
[Java] 변수와 상수와 리터럴 변수 변수(variable), 값을 저장할 수 있는 메모리 상의 공간을 의미함, 이 공간에 저장된 값은 변경될 수 있기 때문에 변수라고 부름 변수의 선언과 초기화 변수의 선언은 다음과 같이 해주면 된다. boolean flag = true; char var1 = 'a'; byte var2 = 1; short var3 = 10; int var4 = 100; long var5 = 100; float var6 = 3.14f; double var7 = 3.14; 변수는 ‘변수 타입’과 ‘변수명’으로 구분된다. 위 예시에서는 boolean, char, byte, short, int, long, float, double이 변수의 타입이 되고 각각 flag, var1, var2, var3, var4, var5, va..

728x90
반응형