본문 바로가기

IT

[파이썬] if __name__ == '__main__': 이 코드는 왜 (거의)모든 파이썬 소스에 있을까요 이번 포스트에서는 오래간만에 파이썬 코드에 대해 적어볼까 합니다. 언제나 그렇듯이 전문 프로그래머가 아닌 초보자 입장에서의 글인 점을 감안해 주시기 바랍니다. ^^ 파이썬 소스 코드를 보면, 다음과 같은 형식으로 구성된 경우가 많은 것을 볼 수 있습니다. import sys def multiple2(num): return num*2 def plus2(num): return num+2 def main(): num1=sys.argv[1] num2=sys.argv[2] result = multiple2(num1)+plus2(num2) print (result) exit(0) if __name__ == '__main__': main() 하지만 아래 처럼 작성해도 전혀 문제 없이 실행되지요?import sys d.. 더보기
클라우드 사진 백업 서비스 비교 : 네이버 클라우드 vs 구글 포토 vs 플리커 제가 쓰고 있는 스마트폰이 자체 용량이 작고 추가적인 메모리 확장이 불가능한 아이폰 5s 16GB모델이다 보니, 스마트폰으로 찍은 사진을 클라우드 스토리지로 백업하는 것은 선택이 아니라 필수가 되었습니다.16GB라는 용량은 사실 필요한 앱만 몇 개 설치해도 금방 다 차기 때문에, 음악이나 사진을 로컬 스토리지에 저장하는 사치를 부릴 여유가 없는 거죠. 이번 포스트에서는 아이폰을 기준으로, 스마트폰의 사진을 클라우드에 백업할 때 쓰는 서비스를 비교해 보도록 하겠습니다.제가 개인적으로 생각할 때 대중적으로 가장 많이 쓰이는 세 가지 서비스를 비교해 볼까 합니다. 네이버 클라우드 한국 인터넷 환경의 갑인 네이버에서 제공하는 클라우드 서비스입니다.원래 네이버 N드라이브였는데, 최근에 이름을 "네이버 클라우드" .. 더보기
[파이썬] ISIN 코드 (표준코드) 체크 디지트 (검사숫자) 계산함수 주식이나 파생상품 등 거래소에서 거래되는 상품 (혹은 거래되지 않더라도 코드가 필요한 상품) 에는 모두 ISIN코드가 부여됩니다. 한국거래소에서도 ISIN코드를 부여 하는데요, ISIN코드는 11자리의 정보 + 1자리 체크 디지트로 구성됩니다. 체크 디지트는 12자리 ISIN코드가 정상적인 코드인지 정합성을 확인하기 위한 코드입니다. 오늘은 ISIN코드 중 11자리를 입력하면, 나머지 체크 디지트 1자리를 계산하는 파이썬 코드를 공유해 봅니다. def calc_checkdigit(isin): """Calculate and return the check digit""" #Convert alpha characters to digits isin2 = [] for char in isin: if char.isal.. 더보기
아이폰/안드로이드 사진 암호화 관리 - 1Password 가끔, 사진 파일을 암호화 해서 스마트폰에 보관해야 할 때가 있습니다. 예를 들어서 은행 인터넷뱅킹 보안카드를 여러장 가지고 다니기 힘들다거나, 혹은 남들이 보면 안되는 사진(?) 같은 경우입니다. (물론 보안카드를 사진으로 찍어서 보관하는 것은 보안 측면에서 절대 권장하지 않는 방법이긴 합니다) 이번 포스트에서는 사진을 암호화 해서 안전하게 보관하고, 간편하게 스마트폰에서 확인하고 싶은 경우 1Password 앱을 이용하는 방법을 공유하고자 합니다. 1Password 1Password는 아이폰에서 꽤 유명한 앱인데요, iOS뿐 아니라 안드로이드, 윈도우 및 맥에도 앱이 출시되어 있습니다. 패스워드를 강력한 암호화 알고리즘으로 암호화 해서 보관하는 앱이고, 특히 아이폰에서는 터치ID와 연동이 되어 매우 .. 더보기
[파이썬] 텍스트 파일 처리시 행 끝의 개행문자(\n) 삭제 - map, lambda, strip 파이썬으로 (제가) 주로 하는 일 중 하나가 텍스트 파일 처리입니다. 큰 크기 (기가바이트 단위) 의 텍스트 파일을 읽어서 원하는 대로 처리하는데 가장 편한 방법 중 하나가 파이썬을 사용하는 방법인데요, 텍스트 파일을 읽을 때 많이 사용하는 방법 중 하나가 readlines 함수입니다. 다만 readlines함수를 쓰면 각각 행의 마지막에 붙어 있는 개행문자 (\n) 도 같이 딸려서 읽게 됩니다. 텍스트 파일을 처리 할 때 개행문자는 대부분 원치 않는 데이터이므로 삭제를 해야 하는데요, 간단하게 한 줄로 처리가 가능합니다. (마지막 라인) f = open(sys.argv[1], 'r') lines = f.readlines() lines = list(map(lambda s: s.strip(), lines).. 더보기
KT 기존약정 만료후 요금할인지원금 (선택약정) 신청후기 이번 포스트에서는 KT에서 선택약정할인 신청을 한 이야기를 공유해 볼까 합니다. 생각해 보면, 저는 지금까지 핸드폰을 거의 2년 마다 한번씩 바꿨었던 같습니다. 스마트폰이 나오기 전에는 항상 "공짜폰" 으로 번호이동을 해 왔고, 저에게 최초의 스마트폰이었던 아이폰4 (기억 나시는 분도 계시겠지만 이 때는 제 돈 다 주고서도 한두달 기다려야 받을 수 있었죠) 이후로 옵티머스 LTE2 (이 때는 기기변경이었지만 나온 지 조금 지난 핸드폰이라서 거의 기기값 없이 구매했었습니다. 그러나 아이들과 줄넘기를 하다가 제 발이 착지할 위치에 미리 착지하는 바람에 6개월만에 삶을 마감(?) 했죠), 그리고 지금 쓰는 아이폰 5S까지 왔습니다. 사실은 지난 주에 핸드폰을 바꿀 생각을 하고, 뽐뿌에서 '성지' 로 불리는 신.. 더보기
아이폰5s 우측상단 액정들뜸현상 - 서비스센터 방문기 제가 아이폰5s를 사용한지도 이제 막 2년이 지났습니다. 저와 비슷한 시기에 아이폰5s를 구매하셨던 많은 분들은 아이폰 6s로 옮겨타시는 것 같은데요, 저같은 경우는 주로 주머니에 핸드폰을 넣어 다니고 양복바지가 무거운 핸드폰때문에 늘어지는 게 싫어서 현존하는 핸드폰중 가장 얇고 작은 편인 (물론 더 얇은 핸드폰은 많지만, 더 작은 핸드폰은 별로 없는 걸로 알고 있습니다) 5s를 당분간 더 쓰려고 하고 있습니다. 그런데, 잘 사용하고 있는 제 아이폰에 두가지 문제가 발생한 것을 최근에 발견했습니다. 카메라 렌즈에 먼지 유입 액정 우측 상단이 튀어나옴 (액정 들림 현상) 카메라 먼지는 사진에 아주 큰 영향을 주지는 않는 것 같아서 그러려니 하고 있었는데, 액정 들림 현상은 인터넷을 찾아보니 배터리가 부풀어.. 더보기
[파이썬] 텍스트 변수에서 따옴표 제거하기 파이썬으로 텍스트 파일을 처리하다 보면, 읽어 오는 파일 안에 숫자, 문자 등이 혼용되어 있는 경우가 있습니다. 그리고 텍스트 파일 내의 문자는 큰따움표나 작은따옴표 (" 혹은 ') 로 씌여져 있을 때가 종종 있죠. 예를 들면 아래 처럼요. "Michael Jackson";34;"Seoul" "Janet Jackson";24;"Busan" 파이썬에서 위 텍스트를 파싱하고 난 결과물에는 따옴표가 들어가게 되는데요, 문자열을 검사해서 따옴표를 없애주는 간단한 함수를 소개합니다. (제가 만든 것은 아니고 인터넷에서 이전에 검색해서 찾은 것입니다) def dequote(s): """ If a string has single or double quotes around it, remove them. Make sur.. 더보기