Programming/python(68)
-
[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.08 -
[Python] 파이썬에서 한글로 주석 입력하기
파이썬에서 주석을 한글로 입력할 시 encoding 에러가 발생한다. 파이썬 파일 맨 첫 줄에 아래와 같은 코드를 입력해 주면 해결.# -*- coding: utf-8 -*-
2014.03.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.08 -
[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.08.09 -
[Python] python에서 singleton 구현
Python으로 만든 프로그램에 crontab으로 스케쥴을 걸어놨더니..아놔~ 이게 중복으로 실행되서 서버가 위험에 빠질뻔 했다 ㅠ_ㅠ 쉘 프로그래밍에서는 대부분 ps 로 프로세스 목록을 가져온 후, 해당 프로세스 이름이 있으면 그냥 빠져나오도록 해서 중복 문제를 피하곤 했었는데, ' 아 python은 좀 더 편리하지 않을까??' 라는 생각에 singleton을 찾기 시작!의외로 손쉽게 결과를 찾았다..바로 tendo 라는 package를 설치하여 손쉽게 singleton 프로그램을 구현할 수 있었다.from tendo import singleton me = singleton.SingleInstance() if __name__ == "__main__" :[......] 위 방법 외에도 프로그램 생성 시 ..
2013.08.03 -
[Python] Virtualenv
Python에는 Virtualenv라는 것이 있다. virtualenv??? 말 그대로 가상 환경이라는 것이다. 대개 서버에서 python 작업을 하다보면 서버에 깔린 패키지가 version이 다른 경우도 있고, 새롭게 어떤 package를 깔려고 하면 서버 관리자의 허락도 받아야 하고.. 여간 불편하지 않을 수 없다. 그래서 나온게 바로 virtualenv!! 서버 내에서 python 자신만의 package 공간을 마련해 주는 것이다. 서버에 최신 버전의 mysql이 깔려 있더라도 virtualenv를 통해 이전 버전의 mysql을 깔고 구동시킬 수가 있다. 소개는 이 정도까지만 하고.. 그럼 이제 설치 하는 방법에 대해 살펴보자. 우선 내가 가진 환경이 우분투 12.04라서 12.04를 기준으로 설치..
2013.08.02