본문 바로가기

Coding/Python113

파이썬으로 슬랙봇 만들기 먼저 아래의 명령어로 slacker를 설치한다. sudo pip install slacker 그리고 슬랙사이트를 들어가서 API를 발급받는다. https://api.slack.com/bot-users creating a new bot user 클릭 봇의 이름을 입력API토큰을 발급받았으면 아래의 코드를 실행시켜 정상적으로 동작하는지 확인한다. from slakcer import Slacker token = '발급받은 API토큰'slack = Slacker(token)slack.chat.post_message("#general", "GOGO") #general채널로 GOGO라는 메세지를 보냄 2017. 3. 2.
파이썬에서 엑셀다루기 먼저 아래의 사이트를 통해 파일을 다운로드 받고 install 해준다. https://pypi.python.org/pypi/openpyxl/2.4.1https://pypi.python.org/pypi/jdcal 첫번째는 openpyxl 라이브러리 파일이고 두번째는 라이브러리를 사용하기 위한 추가모듈이라고 한다.설치를 완료했으면 다음과 같은 코드를 입력하여 파일을 생성, 입력해본다. from openpyxl import Workbook wb = Workbook()ws = wb.activews['A1'] = 'test'wb.save('test.xlsx') 파일이 생성되고 내용이 채워졌으면 정상적으로 설치가 완료된 것 이다. [ Sheet 추가]ws1 = wb.create_sheet("Mysheet") # 맨.. 2017. 1. 7.
파이썬 한글 인코딩 문제 해결 >>> t = (('테스트',100),('한글',200))>>> t(('\xed\x85\x8c\xec\x8a\xa4\xed\x8a\xb8', 100), ('\xed\x95\x9c\xea\xb8\x80', 200))>>> print t(('\xed\x85\x8c\xec\x8a\xa4\xed\x8a\xb8', 100), ('\xed\x95\x9c\xea\xb8\x80', 200))>>> print repr(t).decode('string-escape')(('테스트', 100), ('한글', 200)) 2016. 12. 8.
multiprocessing 간 전역변수 공유 multiprocessing으로 프로그램을 실행시키면 스레드와는 달리 완전히 독립된 새로운 프로세스가 실행되기 때문에전역변수를 공유할 수 없다. 2016. 12. 7.
파이썬 multiprocessing 파이썬은 GIL 때문에 멀티스레드로 프로그램을 구성해도 실제로는 한번에 하나의 스레드가 time-sharing하는 형태로 실행된다. -> multiprocessing 모듈을 사용하여 해결가능 [ex code]from multiprocessing import Processimport time class test:def a(self):for i in range(0,5):print 'a'time.sleep(1)def b(self):for i in range(0,5):print 'b'time.sleep(1) if __name__ == '__main__':go = test()p1 = Process(target=go.a)p2 = Process(target=go.b)p1.start()p2.start() 2016. 12. 5.
ascii' codec can't decode byte 0xed in position 0: ordinal not in range(128) 에러 한글관련 처리하다가 ascii' codec can't decode byte 0xed in position 0: ordinal not in range(128) 와 같이에러가 발생하는 경우가 생겼다. 보통 최상단에 #-*- coding: utf-8 -*- 를 써주면 해결이 됐는데이번에는 여전히 에러가 발생했다.이럴 경우 아래와 같은 방법으로 해결할 수 있다. import sysreload(sys)sys.setdefaultencoding('utf8') 2016. 12. 5.