반응형

Coding 120

파이썬 - lambda

다른 언어에서의 lambda에 대해서는 아는 바 없고... Python에서의 lambda에 대해 조금 더 이해하고자 여기저기 뒤진 결과를 이곳에 정리함. 대략 이해한 바로는 def ... 로 정의하는 함수와 같은 일을 하되 함수로 별도로 정의하기보다는 일회성으로 사용할 경우 유용한 방법임. lambda 변수들 : 변수들을 이용한 expression 예를 들어 g = lambda x : x**2 는 def g(x): return x**2 와 동일한 역할 filter(), map(), reduce() 등과 함께 사용하는 사례들 http://www.secnetix.de/olli/Python/lambda_functions.hawk 다음의 사이트에서는 어떤 경우에 lambda 사용이 더 적절한가와 왜 python..

파이썬 - 웹스크래핑 연습 예제 (iMacro 함께 사용)

# -*- coding: utf-8 -*- from twill.commands import * import re import Image def NakJang(): userid='yourname' snum1='yourjuminbunho-1' snum2='yourjuminbunho-2' # 낙장불입 url='https://kr.edit.sdb.yahoo.com/verify_adult?.done=http%3A%2F%2Fkr.news.yahoo.com%2Fservice%2Fcartoon%2Fshellview2.htm%3Flinkid%3Dseries_cartoon%26sidx%3D12087%26widx%3D106%26page%3D1%26seq%3D0%26wdate%3D20100406%26wtitle%3D%25B3..

파이썬 - PIL (Python Image Library)

회사 업무중에 개발했던 몇가지 평가 기술에서 간단한 이미지 분석이 필요했었다. C++로 프로그램을 짜면서 적절한 무료 라이브러리를 찾다가 결과적으로는 EasyBMP라는 것을 쓰게 되었었다. 이름처럼 BMP만을 처리한다. 덕분에 평가를 위한 이미지들을 모두 (비압축) BMP로 만들어서 하드디스크 용량을 열심히 잡아먹었고... (물론 JPG 같은 경우에 있는 압축에 의한 이미지 열화등이 안되는 장점이 있기는 하지만...) 이러한 한계가 싫을때는 Matlab으로 이미지 읽어와서 처리하는 간단한 스크립트를 만들기도 했었지만 역시 자체적으로 실행되는 프로그램에 함께 들어가질 않아서 꺼리는 편이었다 (물론 batch script과 텍스트 파일을 통한 자료 교환을 통해 적절히 실행프로그램과의 연결을 할 수 있기는 하..

파이썬 - twill을 이용한 web login & data scraping

stock 분석을 시작하면서 한동안 google finance에서의 주식 데이터를 얻는데 로그인을 한 후 얻어야 할 경우가 있었다. 로그인 한 경우와 로그인 하지 않은 경우에 받을 수 있는 데이터의 차이가 있어서였다. 한 주식(예를들어 AAPL; 애플)의 chart 화면에서 web source를 읽어 보면 2분/1일/1주 차트 데이터가 들어있는데, 로그인을 하면 매 틱마다의 close, volume만이 아니라 high/low/open을 다 얻는다. 하지만 로그인 없이는 close, volume 밖에 없다. google finance 로그인 한 경우 google finance 로그인 하기 전 이 외에도 회원으로 가입된 사이트에 로그인 해야 얻을 수 있는 자료가 훨씬 많음은 상식적으로도 당연하다. 하지만 J..

파이썬 - eval()

파이썬이 동적 프로그래밍 언어라고 들었다. Built in function인 eval()이 그러한 특징 때문에 구현 가능한 것인지는 잘 모르겠지만 엄청나게 파워풀함을 알게 되었다. 예전 C/C++ 등을 쓸 때에는 임의의 수식을 스트링 등으로 입력받아 그 수식에 대한 계산을 할려 하면 일일히 lexical analysis 등을 하는 적절한 interpreter를 만들어야 될 것이라 생각하고 포기한 적이 있다. 혹시 내가 C/C++에도 eval() 같은 함수가 있는것 조차 몰랐던가? (아마 unix 등을 쓰면 외부의 lex/parse generator 등을 써서 뭔가 하는 방법이 있긴 한 것 같지만 내 수준 밖의 일이라....) 그런데 파이썬의 eval()은 내가 하고 싶었던 바로 그런 일들을 한줄로 끝내준..

파이썬 - find() vs index()/count()

초보라서인지 햇갈리는 것... count(), index() 리스트, 하나의 스트링에 모두 적용 가능 리스트의 경우는 아이템 찾는 경우 사용 스트링에 대해 쓸 경우는 문자열 내의 패턴 찾는데 적용 가능 count()의 경우 찾은 갯수를 돌려주며 없으면 0 index()의 경우 찾을 경우에 한해 위치 되돌려주지만, 없으면 에러 find() 오로지 하나의 문자열 내에서의 패턴 찾을 때 사용 (리스트에 적용 못함) 없으면 -1, 있으면 찾은 위치 표시

파이썬 - An Introduction to Python Lists

http://effbot.org/zone/python-list.htm 정리가 잘 되어 있고 눈에 잘 들어옴 (내 스타일?) 기억해 둘 코드 out = map(function, L) 또는 out = [function(object) for object in L] 개인적으로는 첫번째가 더 편하게 느껴짐. 하지만 두번째의 경우 기존 function 호출에 추가 연산을 가할 수 있을 듯... (function(object) 전체가 하나의 새로운 object가 되게끔...) 예)

728x90