programming 공부/Python
-
[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))
-
Codility 배열문제 2번programming 공부/Python 2021. 3. 1. 23:30
배열에서 짝지어지지 않은 값을 찾는 문제 딕셔너리로 먼저 분류를 하고 카운트를 한다음에 카운트 수가 홀수인(짝지어지지 않은) 값을 찾는 방법으로 해결할 수 있다. def solution(A): if len(A) == 1: return A[0] mp = dict() for i in range(len(A)): if A[i] in mp.keys(): mp[A[i]] += 1 else: mp[A[i]] = 1 for i in mp: if mp[i] % 2 == 1: return i
-
구글 이미지 크롤링 하기programming 공부/Python 2021. 1. 12. 01:23
조코딩님의 유튜브에서는 처음에 구글 이미지 다운로드 라이브러리를 활용하는 방법을 소개하셨던데 해당 라이브러리는 구글이 검색 방식을 바꾸면서 무용지물이 되었다고 한다. 그래서 후속편으로 Selenium을 활용하는 방법을 소개하고있었다. 처음 파이썬을 배울때 셀레니움을 많이 썼었는데 셀레니움의 극악의 속도에 질려서 최근에는 거의 대부분의 작업을 requests 로 하다보니 셀레니움으로 하기가 너무 귀찮았다. 어차피 구글에서 API로 제공하지 않을까? 포털사이트들이 대부분 API를 일정량은 공짜로 제공을 하고 초과 사용분에 대해서 과금을 하는 시스템이기 때문에(야매 크롤링도 같은 이유로 막았을것이라고 생각함) API를 활용하면 될것 같아서 찾아보았다. 역시나 byeonghun-lee.github.io/2017..