전체 글
-
[Python] 프로세스 종료시 작업 추가하기programming 공부/Python 2021. 6. 20. 12:36
미처 예상하지 못한 에러가 나서 꺼진다거나 혹은 정상적으로 종료되었더라도 종료되는 시점에 무언가 작업을 하고 싶을 수 있다. 정상적으로 종료되는 경우에 코드의 마지막에 추가해도 되지만 어느 포인트에서 종료되더라도 실행되도록 하고 싶다면 atexit 모듈의 register 메서드를 쓰면 된다. import atexit def goodbye(): print("종료합니다") if __name__ == "__main__": atexit.register(goodbye) print("시작합니다.") 동일하게 decorator로도 쓸 수 있다. import atexit @atexit.register def goodbye(): print("종료합니다") if __name__ == "__main__": print("시작..
-
[Python] 파이썬 실행시 라이브러리 설치 자동으로 하기programming 공부/Python 2021. 6. 20. 12:08
사용한 라이브러리가 다른 컴퓨터에서 실행 시 설치되어 있다는 보장이 없을 수 있다. 그런 경우 subprocess.check_call 을 써서 설치를 하게 만들 수 있다. try: import requests except: import sys import subprocess check_call([sys.executable,'-m', 'pip', 'install', '--upgrade', 'requests'])
-
[Python] pyhive로 요청시 시간 초과되는 경우programming 공부/Python 2021. 6. 20. 12:00
회사에서 요청 시 시간제한을 걸어뒀는데, python으로 요청하는 경우에 간혹 시간 초과되는 경우가 발생되었다. 요청할 때 poll_interval 을 인수로 넣어주면 해결된다. query = "select * from tablename" cursor = presto.connect(host ="url",port=443,username="username",password="password",protocol='https',poll_interval=0.2).cursor() cursor.excute(query) data = cursor.fetchall() cursor.close()
-
-
[python] class instance의 변수로 정렬하기programming 공부/Python 2021. 5. 2. 15:52
게임 캐릭터를 만든다 생각하고 캐릭터를 만들어보자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 class charactor(object): def __init__(self,id,name,hp,mp,power): self.id = id self.name = name self.hp = hp self.mp = mp self.power = power a = charactor(id=1, name='minho', hp=300, mp=300, power=10) b = charactor(id=2, name='bonggu', hp=300, mp=200, power=80) cs 캐릭터 두개중에 power가 높은순으로 정렬하고 싶다면 어떻게 해야할까? 정말 간단하게 해결할 수 있다 1 2..
-
파이썬으로 이차원 배열 정렬하기programming 공부/Python 2021. 4. 24. 18:15
나름 자주 쓸일이 있는데 자꾸 까먹어서 정리해둔다. 크게 두가지 방법을 쓸 수 있다. lambda 함수를 이용하는 방법 arr = [[1,2,3,4],[6,1,2,4,4,5,5],[6,23,52345,325,124,3246],[1,4,2,65,4,2,6]] arr.sort(key = lambda x: x[1]) operator 모듈의 itemgetter 를 쓰는 법 from operator import itemgetter arr = [[1,2,3,4],[6,1,2,4,4,5,5],[6,23,52345,325,124,3246],[1,4,2,65,4,2,6]] arr.sort(key = itemgetter(1))
-
자바 공부 001. Hello Worldprogramming 공부/Java 2021. 3. 4. 20:48
결국 자바 공부를 하기로 했다. 그동안 자바가 굉장히 어려운 언어라고만 생각했으나 장점이 놀랍게도 "배우기 쉬운" 언어라고 한다. 아무튼 첫 시작이니 Hello World 를 찍어봐야겠다. class Main { public static void main(String[] args) { System.out.println("Hello, World."); } } JAVA에서는 무조건 클래스로 만들고 프로그램의 시작점이 되는게 main 메서드라고 한다. public class의 이름은 파일명과 일치해야 되고 하나의 파일에는 하나의 public class만 존재해야 한다고 한다. 별도의 모듈이나 패키지를 import하지 않아도 System.out.println 명령어 하나로 실행 시킬 수 있다는 점이 좋다. 지금..