본문 바로가기

Programming/python67

[Python] python foreach에 step 주기 foreach를 사용하여 코딩하는 일이 많은데, foreach에서 index를 건너뛰고 싶은 경우에 어떻게 하는지를 알고 싶었다. for문으로 바꿔서 스탭을 주자니 먼가 좀 찝찝하고... sampleList = [1, 2, 3, 4, 5, 6] sampleList_length = len(sampleList) for i in range(1, len(sampleList), 2):print sampleList[i] 이렇게 바꿔서 표현해도 정상 동작했지만, foreach에서 동작하게 해보고 싶었다. 하는 방법은 너무도 간단..foreach에도 아래와 같이 코딩하여 step을 지정해 줄 수 있었다. for i in sampleList[::2]:print i [] 안의 요소는 문자열 sliding 규칙과 동일하다... 2015. 2. 21.
[Python] beautiful soup 사용하기 beautiful soup 설치 (우분투 환경)$> pip install beautifulsoup4 웹페이지의 GET 데이터 정보 가져오기from bs4 import BeautifulSoupimport urllib2 try: response = urllib2.urlopen("가져올 웹페이지 주소") page = response.read().decode('cp949', 'ignore') # 인코딩 변환이 필요할 경우 response.close()except urllib2.HTTPError, e: print e.reason.args[1]except urllib2.URLError, e: print e.reason.args[1] soup = BeautifulSoup(page) 웹페이지의 GET 데이터 정보 가져.. 2015. 2. 17.
[Python] 현재 날짜 가져오기 파이썬에서 현재 날짜 가져오기.. 자주 쓰는 기능인데 항상 까먹는다..이 기회에 외우자. from datetime import datetime datetime.today() # 현재 날짜 가져오기 datetime.today().year # 현재 연도 가져오기datetime.today().month # 현재 월 가져오기datetime.today().day # 현재 일 가져오기datetime.today().hour # 현재 시간 가져오기 위와 같이 데이터를 가져오는 경우가 있고, 나같은 경우에는 내가 원하는 포멧으로 출력을 원하기 때문에 아래와 같이 strftime() 함수를 이용한다. datetime.today().strftime("%Y%m%d%H%M%S") # YYYYmmddHHMMSS 형태의 시간 출력.. 2015. 2. 8.
[Python] SQLAlchemy 사용하기 요즘 대부분의 python 업무를 Django로 진행하여서 ORM을 따로 신경쓰지 않아도 됐었는데, 때마침 기존 python script에서 DB를 호출해서 사용해야 할 업무가 생겨났다. JAVA 같은 경우에는 mybatis라는 좋은 ORM 도구가 있는데, 과연 python에도 이렇게 쓸 수 있는게 있을까? 열심히 구글링 하였고 예전부터 많이 들어보았던 SQLAlchemy를 사용하게 되었다. 기존 ORM과 그리 크게 다르지 않으며, 좀 더 이해를 쉽게 하기 위해 Model부분, database부분, controller부분 이렇게 세 부분으로 나누어 봤다. 일단 sqlalchemy를 사용하기 위해서는 sqlalchemy를 설치해야 한다. pip install sqlalchemy 만약 데이터베이스로 mysq.. 2015. 2. 6.
[Python] 파이썬 외부 실행 결과 저장하기 파이썬에서 외부 명령어를 사용할 때 대부분 os.system(cmd) 를 많이 쓴다. 하지만 os.system을 쓸 경우에는 결과 값을 문자열로 가져오려면 꽤나 번거롭다. 파일로 저장한 후 파일로 읽어서 가져오는 방법이 있기는 하지만 너무나 번거롭다. 하지만 아래의 코드와 같이 사용하면 외부 결과를 문자열로 저장할 수가 있다. 2014. 12. 17.
[Python] python에서의 정규식 python에서 특수 문자를 제거하려고 하는데 replace로 처리하기에는 여간 불편하지 않을 수가 없다. 아래 코드와 같이 일일이 특수 문자를 적용시켜도 되지만 코드가 먼가 아름답지 못해서 정규식을 써보기로 했다. sample_str = sample_str.replace("(", "") sample_str = sample_str.replace("*", "")sample_str = sample_str.replace("&", "") 파이썬에서 정규식을 이용한 replce를 적용하기 위해서는 re라는 패키지를 import 해야 한다. (아마 regular의 re를 딴 듯 싶다.) import re 그런 후 위의 코드를 아래와 같이 깔끔하게 작성. sample_str = re.sub("[(*&]", "", s.. 2014. 12. 8.
[Python] 파이썬에서 한글로 주석 입력하기 파이썬에서 주석을 한글로 입력할 시 encoding 에러가 발생한다. 파이썬 파일 맨 첫 줄에 아래와 같은 코드를 입력해 주면 해결.# -*- coding: utf-8 -*- 2014. 3. 26.
[Python] 우분투에서 django mysql과 연동하기 해당 글은 python과 mysql이 설치되어 있다는 가정 하에서 진행합니다. python pip를 통해 django를 설치 합니다.sudo pip install django 설치가 완료되었으면, 제대로 설치되었는지 확인해 봅니다. 쉘에서 django-admin.py 명령을 쳤을 때 명령어 목록이 출력되면 django가 제대로 설치 된 것입니다. 이제 django로 관리할 프로젝트 폴더를 하나 만들고, 해당 폴더로 이동한 후 아래와 같이 입력합니다.$> mkdir testProject $> cd testProject $> django-admin.py startproject testProject 위와 같이 만들면 testProject 안에 testProject라는 폴더가 하나 더 생성이 되고, 해당 폴더 .. 2013. 11. 8.
[Python] python 전역 변수 Python에서 전역 변수를 쓰려면 어떻게 해야 할까? 아래의 코드를 살펴보자. 과연 결과 값을 얼마일까?flag = 0 def changeFlag() :flag = 1 if __name__ == "__main__":changeFlag()print flag changeFlag() 이후에 flag 값을 찍어보면 flag는 0 값이 나온다. 이 말인 즉 맨 위에 선언된 flag와 changeFlag()에 있는 flag 변수가 서로 다른 변수였단 것을 알 수가 있다. 또한 C 처럼 범위 밖에서 변수를 선언한다고 전역 변수가 되지 않는다는 것도 알 수 있다.그럼 flag란 값을 전역 변수로 쓰고 싶으면 어떻게 해야 할까?아래와 같이 고치면 된다.flag = 0 def changeFlag() :global fla.. 2013. 8. 9.