농협 수련원을 지난 올레길은 토산 산책로로 지납니다. 옆으로는 파도 소리를 들으며 숲길을 걷는 재미가 있습니다. 토산 산책로란 이름답게 돌바닥으로 포장해 놓기도 있지만 곳곳에 바닥이 망가진 곳도 있습니다. 그냥 흙바닥으로 놓아도 좋을 것을...... 사람이 손을 대기 시작하면 그 길은 끝도 없이 사람의 손을 필요로 하는 법인 모양입니다. 토산 해안 산책로, 토산 바다 산책로라고도 부릅니다. 멀리 조금 전에 지나온 농협 수련원이 보입니다. 현무암 바닥으로 정리된 토산 산책로는 근처 농협 수련원이나 대명 리조트에 놀러 오신 관광객들에게는 멋진 산책로이지 않을까 싶었습니다. 소망터널이라는 이름의 숲터널을 지납니다. 많은 사람들이 소망을 빌며 지나는 곳이겠지요? 토산 산책로의 동백은 이제 꽃이 질때가 되었나 봅..
표선 해변의 백사장을 가로지른 저희는 표선 해변의 쉼터에서 근처 편의점에서 구입한 커피를 마시며 잠시 넉넉한 휴식 시간을 가졌습니다. 3코스 시작점인 혼인지 마을에서 오전 8시 30분 정도에 출발했는데 종점인 표선 해변에는 오후 1시 조금 넘어서 도착했으니 휴식 및 점심시간을 포함해서 4시 30분 정도면 열심히 걸은 듯합니다. 이제 표선 해변에서 올레 4코스를 시작합니다. 올레 4코스는 19Km에 이르는 거리라 만만치가 않은데 해가 지기 전에 숙소에 도착할 수 있을지 모르겠습니다. 허약한 체력의 중년에게는 조금은 무리한 일정이기는 합니다. 올레 4코스가 시작되는 표선 해변에 있는 제주 올레 안내소. 갯무꽃이 현무암과 어울려 피어 있는 민속 해안로를 따라 걷습니다. 그런데 이 길은 우회로이고 원래의 올레 ..
신풍 신천 바다 목장을 지난 올레길은 한동안 양식장 단지 앞을 걷습니다. 커다란 양식장이 삭막할 법도 한데 길 화단에는 가자니아(Gazania rigens)가 한창입니다. 노란 가자니아는 올레길 곳곳에서 만날 수 있고 봄부터 9월까지 오랜 시간 꽃을 볼 수 있는 식물이라고 합니다. 훈장 국화, 보물화(Treasure flower)라고도 불리며 남아프리카가 원산지라 합니다. 길을 걷다가 멀리 양식장들이 보이는 정자에서 점심을 먹으며 쉬어 가기로 했습니다. 어제 저녁 출발 직전에 급하게 말았던 김밥을 먹으며 얼마 남지 않은 3코스 마무리에 대한 기대와 머나먼 4코스 종점에 대한 막연함을 달래 봅니다. 양식장에 설치된 엄청난 크기의 파이프와 검은 지붕, 해안가에 검은 돌무더기들이 삭막할 법도 하지만 길가 화단..
올레 3코스는 신산 포구와 농개를 지나서 주어동 포구에 이릅니다. 해변길을 걷다가 해안가 돌길로 인도하는 올레길을 만나면 가끔은 그냥 좋은 길로 갈까? 하는 게으름 병이 도집니다. 검은 현무암을 배경으로 초록, 노랑, 흰색이 제주의 봄을 한폭의 그림에 담아 놓았습니다. 바람에 하늘 거리는 하얀꽃은 유채꽃과 함께 제주의 봄을 장식하는 갯무라고 하는 제주 야생 무의 꽃입니다. 한동안 환해장성로를 걷는데 갑자기 커다란 개 한 마리가 저희에게 다가왔습니다. 그것도 꼬리를 흔들며 친근감을 표시하는 것이 아니라 조금은 위압감을 풍기며 천천히 다가왔습니다. 목줄 없는 커다란 개가 다가오자 저는 집에 있는 개에게 하듯이 손바닥을 내보이며 "안돼! 그만!" 했는데 갑자기 옆지기가 "아니야!" 하면서 저를 말렸습니다. 개..
올레 3코스는 온평포구에서 시작합니다. 구름을 뚫고 비추이는 햇빛과 포구를 장식하고 있는 바람개비가 어울려 감탄을 자아내는 풍경을 선사합니다. 구름 낀 온평포구가 낭만적인 분위기 가운데 올레길 걷기를 시작하게 합니다. 올레길 3코스의 시작점이 있는 온평 포구는 현재는 사용하지 않고 서쪽에 추가로 만들어 놓은 조금 더 큰 포구를 이용한다고 합니다. 그래서 이쪽의 작은 포구는 관광객들은 위한 다양한 장식들로 가득합니다. 마치 남산에 있는 난간에 열쇠를 달아 놓듯이 자신의 바램을 담아 걸어 놓은 리본들입니다. 온평포구에 있는 정자에서는 이곳에 걸어 놓을 수 있는 리본을 무료로 제공하고 있었습니다. 온평포구에 세워진 수많은 장식들 만큼, 마을을 지키려는 온평리 마을분들의 바람이 이루어 지길 바라는 마음입니다. ..
목포에서 00:30에 출항한 배는 아직 해가 뜨지 않은 오전 5시 45분 제주항에 도착했습니다. 썰물처럼 빠져나가는 사람들을 따라 배에서 내립니다. 차를 싣지 않은 사람들은 여러 경로를 통해서 내릴 수 있기 때문에 줄을 길게 기다리지 말고 직원들의 안내를 받아 아래층으로 내려가면 좀 더 빠르게 내려갈 수 있습니다. 여행을 계획할 당시는 배에서 내리면 여객터미널 출구로 나올것으로 생각했는데 배는 제4부두에서 정박하고 승객들도 여객 터미널 출구가 아니라 제4부두 출입구로 나왔습니다. 승객들을 싣고 가는 전세버스들도 제4부두 앞에서 기다리고 있었습니다. 원래 계획은 제주연안여객터미널[북, 405000110] 정류장에서 315, 412, 415번 중에 하나를 승차하는 것이었는데 한정거장 앞인 "제4부두" 정류장..
조치원역에서 무궁화호 열차를 타고 3시간 40분여를 달려 목포역에 도착했습니다. 기차가 대전과 광주를 지나면서부터는 사람들이 줄어들기보다 등산복을 입은 사람들이 늘어났습니다. 모두들 밤배를 타고 제주도 여행을 떠나는 사람들인 모양이었습니다. 목포역에 내린 시각이 깊은 밤이다보니 택시나 버스로 여객선 터미널까지 이동할 계획이 아니라면 터미널까지 걸으실 분은 처음에 방향을 잘 잡아야 합니다. 역전 건너편에 파출소가 있는데 파출소를 찾아서 방향을 잡거나 유달산이나 여객선터미널 표지판을 따라서 걸으면 됩니다. 걷다 보면 "목포 연안 여객선 터미널"을 만날 수도 있는데 여기에서 제주 가는 배를 찾으면 헤맬 수밖에 없고요 위의 그림처럼 조금 더 내려가면 만날 수 있는 목포-제주 카페리 터미널(목포항 국제 여객 터미..
이번 올레길 여행은 목포까지 기차로 이동하고 목포에서 배를 타고 제주에 입성하는 방법이라서 집에서 접근하기 좋고 주차도 저렴하게 할 수 있는 기차역을 찾았는데 저희에게 맞춤형 기차역으로 딱인 조치원역을 찾았습니다. 조치원역에서 청주공항역으로 이동할 수 있는 열차편도 있고 경부선, 전라선, 호남선 등 웬만한 열차들은 모두 정차하는 교통 요지입니다. 조치원역의 동쪽은 역의 정문격으로 전통시장을 비롯해서 상가와 은행들이 밀집되어 있는 만큼 주차장도 비싸지만 조치원역 서부는 한산한 편이라 주차장도 아주 저렴합니다. 1일 주차에 5천 원입니다. 심지어 업무 시간외에는 주차장을 열어 놓아 자유롭게 드나들 수 있습니다. 물론 하루 이상을 주차하면 위의 그림처럼 차 앞에 하얀 종이의 청구서를 받아 보게 됩니다. 업무 ..
"리눅스 서버(우분투) 설치하기", "리눅스 서버(우분투)에 서브버전 설치하기", "리눅스 서버(우분투)에 트랙(Trac) 설치하기" 에 이은 글입니다. 앞선 포스팅에서는 Ubuntu 16.04 32비트 서버 시스템을 설치하고 서브버전을 웹서버 기반으로 접근할 수 있도록 준비한 다음에 파이썬 및 웹 기반 협업 개발 시스템인 트랙(Trac)을 설치했습니다. 이번 글에서는 가장 기본적인 웹 서비스 환경인 APM(Apache + PHP + MySQL) 환경을 apt-get으로 간편하게 설치하고 MySQL DBMS를 웹 기반으로 관리할 수 있는 도구인 phpMyAdmin을 설치하는 과정을 다룹니다. apt-get 기반으로 시스템 설치 작업을 수행하려면 항상 sudo apt-get update 명령으로 업데이트 ..
"리눅스 서버(우분투) 설치하기"와 "리눅스 서버(우분투)에 서브버전 설치하기"에 이은 글입니다. 이번 글에서는 대표적인 협업 개발 시스템의 하나인 파이썬 기반의 트랙(Trac)을 설치하는 과정을 다룹니다. 시스템을 효과적인 프로젝트 관리에 활용 할 수 있을 것입니다. ■ WSGI 모듈 및 Trac 설치 파이썬으로 개발한 Trac 시스템을 웹으로 서비스하는 다양한 방법이 있지만 이번 글에서는 WSGI 모듈을 적용합니다. 아파치 웹서버의 WSGI(Web Server Gateway Interface)과 함께 Trac은 sudo apt install trac libapache2-mod-wsgi 명령으로 설치합니다. The following additional packages will be installed: ..
"리눅스 서버(우분투) 설치하기"에 이은 글입니다. 형상 관리 시스템중의 하나인 서브버전(Subversion)을 설치하고 형상 관리 리포지토리를 생성한 다음에 다른 컴퓨터에서 네트워크로 체크아웃 받고 커밋하는 과정까지를 다룹까 합니다. 우분투 서버에 서브버전 및 트랙 설치는 Ubuntu 16.04 32비트 버전에서 수행 했습니다. 모든 설치 작업 이전에는 일단 sudo apt-get update 명령으로 업데이트를 수행한 다음에 작업을 진행합니다.sudo apt-get update받기:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]기존:2 http://us.archive.ubuntu.com/ubuntu xenial InRele..
오랜만에 집에서 리눅스 서버를 설치하게 되었습니다. 모니터나 키보드, 마우스 없이 전원만 넣으면 필요한 서비스를 가동시키고 터미널에서 셧다운 시키는 방식으로 적용하려다 보니 리눅스 시스템이 최적의 선택이 아닌가 싶었습니다. 물론 스틱 컴퓨터를 사용하거나 아두이노와 같은 임베디드 시스템도 좋기는 한데 집에 굴러 다니는 본체를 간편하게 설치해서 사용하고 성능이 뒷받침되는 시스템을 확보한다는 시각에서는 리눅스 서버 시스템을 설치하는 것이 현실적인 선택이었습니다. 시스템 설치 및 관리에 관한 전체적인 도움말은 아래의 링크를 참조하세요. https://help.ubuntu.com/lts/serverguide/index.html.ko ■ 시스템 설치 시스템 설치를 위해서는 우선 *.ISO로 배포하고 있는 설치 파일..
DBMS 엔진들은 각기 나름의 분석을 위해 수행 과정을 로그로 남길 수 있도록 하는 장치를 두고 있는데, DBMS에 전달된 SQL문의 처리 과정 중에 일부 이벤트를 로그로 남길도록 하여 응답이 너무 느린 쿼리를 찾거나(SQL 튜닝), 응용 프로그램의 DB 사용 패턴을 코드와 무관하게 분석하는데 사용할 수 있습니다. 이번에는 Microsoft SQL Server(MS-SQL)를 기준으로 쿼리 로그를 남기고 조회하는 방법을 살펴보고자 합니다. 예제에서는 마이크로소프트사에서 무료로 다운받을 수 있는 Microsoft SQL Server Express edition과 Microsoft SQL Server Management Studio Express를 사용했습니다. 우선 Microsoft SQL Server M..
프로젝트 진행 과정에서 데이터베이스에 테스트용 데이터가 없거나, 엑셀로 만들어진 자료를 테이블에 직접 입력하고 싶을 때는 SQL Server에서 제공하는 Import and Export Manager를 사용하면 간편하게 필요를 해결할 수 있습니다. 또한, 서로 다른 DBMS의 자료를 Migration 해야하는 경우에도 ODBC 설정이 가능한 환경이라면 Import and Export Manager를 통해서 손쉽게 데이터베이스 마이그레이션(DBMS Migration) 또는 윈백(DBMS Winback)도 가능 합니다. 이번 포스팅에서는 어떠한 과정을 통해서든 테이블 스키마와 동일한 형태로 작성한 엑셀 파일을 데이터베이스 테이블에 직접 입력하는 과정을 살펴보고자 합니다. 우선 SQL Server manage..
리포팅 도구는 다양한 형태의 보고서를 손쉽게 제작 및 배포할 수 있도록 도와 주는 도구입니다. 보고서 출력은 화면이나 인쇄, 파일 등을 대표적인 대상으로 하며 입력은 주로 데이터베이스를 그 원천으로 합니다. 개발자가 보고서 작성 도구를 활용하여 보고서 양식을 작성해 놓으면, 사용자가 조회한 정보를 해당 양식에 맞게 자동 출력해 주는 형태입니다. 개발자는 출력 양식을 프로그램 코드로 일일이 코딩할 필요없이 양식 작성과 데이터 필드 설정 등 만으로 필요한 작업을 모두 끝낼 수 있습니다. 대표적인 상업용 리포팅 도구들을 살펴보면 비주얼스튜디오에서 쉽게 접할 수 있는 크리스탈 리포트(Crystal Reports), 액티브리포트(ActiveReports) 등의 전문 리포팅 도구 제품과 함께 IBM, SAP, Or..
■ 파이썬 모듈의 설치 파이썬 모듈을 rpm, yum, apt-get등의 리눅스 설치도구나 윈도우의 실행 프로그램으로 설치하면 현재의 시스템과 파이썬 구동 환경에 맞게 간단히 설치할 수 있지만 특정 모듈에 집중해서 배포하는 경우에는 파이썬의 Distutils에서 제공하는 표준 기능을 활용하여 어렵지 않게 설치 할 수 있습니다. 위의 그림은 파이썬에서 생성한 setuptools의 윈도우용 배포 파일을 실행 했을 때의 화면으로 현재의 파이썬 환경을 자동 인식하여 손쉽게 설치를 진행 할 수 있음을 확인할 수 있습니다. 모듈을 설치하면 위의 그림과 같이 파이썬 라이브러리 폴더 아래 site-packages에 저장됨을 확인 할 수 있습니다. 설치 작업은 모듈을 다운로드 받아서 압축 파일을 특정 폴더에 해제하는 것..
"파이썬 모듈과 패키지 - 파이썬 배우기(Python)" 에 이은 포스팅입니다. 파이썬의 내장 라이브러리 모듈은 다양한 분야에 걸쳐서 충분한 테스트를 거친 좋은 코드임에도 불구하고 이를 모르거나 접해 보지 못하면 이미 만들어져 있는 훌륭한 코드가 있음에도 불구하고 똑같은 또는 유사한 기능을 다시 코딩하는 우를 범할 수 있습니다. 본격적인 파이썬 프로그래밍에 앞서 구현하려는 기능이 파이썬 라이브러리 모듈에 있는지 꼭 확인해 볼 필요가 있습니다. 이미 잘 만들어 놓은 라이브러리를 최대한 활용해서 효율적이고 효과적인 프로그래밍을 누려 보세요. 파이썬의 내장 라이브러리 모듈은 모듈 단위의 문서화 자료를 참조해도 되고 import 모듈명 이후에 help(모듈명)하면 자세한 설명을 확인할 수 있습니다. 아래는 re..
파이썬은 지금까지 다룬 다양한 타입과 기본 제공 함수들을 통해서도 다른 프로그램밍 언어에서는 볼수 없는 상당히 유연한 모습을 보여주고 있는데 확장 모듈을 통해서 이보다 좀더 복잡한 문제들을 간편하게 해결하거나 기타 유용한 기능들을 활용 할 수 있습니다. 모듈은 파이썬의 클래스, 함수, 전역 변수 등을 묶어 놓은 것으로 용도에 따라 코드의 재사용성을 극대화 시켜 줍니다. 모듈을 사용하게 되면 얻는 유익을 정리해 보면 다음과 같습니다. 연관성이 있는 모듈만을 로드하여 프로그램 시작 시간을 최소화.필요한 모듈을 손쉽게 추가하여 사용할 수 있습니다.별도의 네임스페이스를 가지고 있어서 다른 모듈과 독립적으로 작업할 수 있습니다.특정 모듈을 필요에 따라 대치시킬 수도 있습니다. ■ 모듈(module)의 정의와 사용..
"파이썬 클래스 1 - 파이썬 배우기(Python)"에 이은 포스팅 입니다. ■ 상속(Inheritance) 상속은 클래스 핵심 개념중 하나로 슈퍼 클래스를 두고 슈퍼 클래스의 모든 속성을 상속 받으면서 전문적인 부가정보를 갖는 서브 클래스를 정의하는 방식 입니다. 한개 이상의 슈퍼 클래스로부터 상속을 받을 수 있고, 시스템 내장 클래스도 상속 받아 기능을 확장할 수 있습니다.생성자(__init__)는 서브 클래스 부터 슈퍼 클래스로 계층적으로 이동하면서 한번만 호출 됩니다. 즉 서브 클래스에 __init__가 정의되어 있으면 서브 클래스의 생성자만 호출되고 서브 클래스에 없고 슈퍼 클래스에 있으면 슈퍼 클래스 생성자가 호출 됩니다. 따라서, 서브 및 슈퍼 클래스에 모두 생성자가 있는 경우에는 서브 클래..
클래스는 데이터(속성, attribute)와 그에 대한 처리를 하나로 정의한 것으로 파이썬 오브젝트들은 특정 클래스의 인스턴스들 입니다. 클래스의 인스턴스인 오브젝트는 다음와 같은 생애주기를 갖습니다. 정의 class 문을 통해 클래스를 정의.(시스템 클래스도 마찬가지)생성 정의한 클래스 정의에 따라 오브젝트를 생성하고 __init__를 호출하여 속성을 초기화.작업 메쏘드 또는 메쏘드 함수를 통하여 작업을 수행.정리(Garbage Collection) 더이상 사용하지 않는 오브젝트를 정리. ■ 클래스 정의 클래스 정의는 아래와 같은 문형을 갖습니다. class 클래스명(부모 클래스):코드 블럭 클래스명은 변수명 규칙을 따르지만 클래스명은 첫문자를 대문자로 해서 혼란을 방지 하는 것이 좋습니다. 메쏘드나 ..
프로그램을 보다 효율적으로 작성하기 위한 방법은 좋은 함수 작성에서 시작한다고 해도 과언이 아닐 정도로 함수를 잘 활용하면 프로그램의 가독성 향상과 효율화를 가져올 수 있습니다. 파이썬의 함수는 입력 파라미터 타입의 제한이 없고 리턴되는 값 또한 자유로워서 뛰어난 확장성을 갖습니다. 함수의 정의는 아래와 같은 형식을 취합니다. def 함수명(파라미터 리스트):코드블럭 함수명은 변수 작성에 따라 제한없이 작성할 수 있지만 추후 클래스명 등과 혼동되지 않도록 되도록 소문자로 시작 합니다. 파라미터 리스트에 기술하는 변수들은 적용 범위가 해당 함수 내부로 한정되는 로컬 변수로 취급 합니다. 변수명=값의 형식으로 기술한 파라미터는 기본값을 가지는 파라미터로 함수를 호출하는 곳에서 해당 파라미터를 지정하지 않으면..
"파이썬 제어구조 1 - 파이썬 배우기(Python)"에 이은 글입니다. 파이썬의 흐름 제어를 다루는 기본적인 문장들을 다루고 있습니다. ■ 주석문과 기타 제어문 프로그램이 커지고 복잡해지면 가독성이 떨어지게 마련인데 이를 보완해 줄 수 있는 방법 중의 하나가 코드에 주석을 달아 놓는 것입니다. 파이썬에서는 # 문자로 주석을 표시 합니다. 줄의 맨처음에 #를 표시하면 해당 줄은 모두가 주석이고 줄의 중간에 오면 그 이후가 모두 주석 입니다. 단, 따옴표 바깥에 표시해야 합니다. 코딩 스키마 주석 프로그램의 첫줄이나 두번째 줄에 기술하며, 코드의 인코딩을 기술 합니다. 코드중에 한글 인코딩(euc-kr)이 있을때는 다음과 같이 기술 합니다. # -*- coding: cp949 -*- UTF-8 인코딩을 사..
프로그래밍 언어가 제공하는 핵심 기능중 하나는 제어 흐름을 기술 할 수 있도록 하는 것으로 제어 흐름에는 해야할 작업을 차례대로 나열하는 순차적 흐름, 특정 조건에 따라 True 또는 False로 흐름을 변경하는 조건적 흐름, 일정한 조건을 따르는 반복 흐름을 대표적인 것으로 들 수 있습니다. 이런 흐름 제어의 중심에 비교 연산이나 논리 연산이 자리 잡고 있으며 앞선 "파이썬 스칼라 타입, 논리(Boolean) - 파이썬 배우기(Python)"에서 기본적인 내용을 다루었습니다. 몇가지 꼭 기억할 사항 옮겨보면 아래와 같습니다. 파이썬에서는 True와 False라는(대소문자 주의) 특별한 값을 제공하고 있으며 False, 0, None, '', "", (), [], {} 등을 모두 False로 처리 합니다..
사전 타입은 인덱스로 개별 항목에 접근하는 배열과 달리 키 값으로 접근할 수 있는 리스트 타입 입니다. 사전은 {키:값, 키:값...}의 방식으로 선언 합니다. 사전 타입의 타입명은 dict인데 dict()함수로 리스트를 사전으로 만들수도 있습니다. dict 로 전달할 인수는 키,값 쌍으로 구성한 리스트들을 원소로한 리스트를 넘겨주면 됩니다. 예제처럼 zip 함수로 키 리스트와 값 리스트 두개로 사전 배열을 작성할 수도 있습니다. {}는 빈 사전을 의미 합니다. 키는 스트링을 비롯한 어떠한 타입으로도 가능하며 아래의 예제 처럼 배열을 키로 가질 수도 있습니다. 또한, 사전은 내부적으로 해시 테이블을 사용하기 때문에 사용자가 입력한 순서로 저장하는 것이 아닙니다. 다시 말해서 항목간 순서가 존재하지 않습니..
참과 거짓의 두가지 값 만을 가지는 타입으로 타입 이름은 bool 입니다. 파이썬에서는 True와 False라는(대소문자 주의) 특별한 값을 제공 합니다. >>> 7 == 7True>>> 7 == 8False>>> a = 7==7>>> type (a)>>> print aTrue ■ 연관 연산자 bool 타입과 연관된 논리 연산자는 True 또는 False만을 리턴하며 그 내역은 아래와 같습니다. == 양쪽이 같으면 True. ==와 =는 서로 다른 연산자로 = 하나는 대입 또는 치환을 의미하므로 주의 합니다.= 우측 보다 크면, 크거나 같으면 Truea> 1 > 3 > 1 > 1 != 3True>>> 1 != 1False>>> 1 1Falseand 양쪽이 모두 True 이면 T..
문자열 표현으로 파이썬에서의 타입 이름은 str 입니다. 작은 따옴표('), 큰 따옴표(") 모두 사용 할 수 있는데 작은 따옴표(')로 시작한 문자열은 반드시 작은 따옴표(')로 끝나야 하고 중간에 작은 따옴표(')를 문자열로 표현할 때는 \'와 같이 Escape합니다. 그렇지만 중간에 큰 따옴표가 올 때는 Escape할 필요가 없습니다. 이 표현법은 큰 따옴표(")에도 동일하게 적용 됩니다. r' '의 방식으로 Raw 스트링을 기술할 수 있는데 r다음의 스트링을 Escape하지 않고 기술한 그대로 처리하기 위한 방식 입니다. 인접한 스트링은 하나의 스트링으로 간주 합니다. 예를 들어 "aa" "bb" "cc"로 기술하면 "aabbcc"와 동일 효과를 냅니다. 여러줄에 걸친 스트링을 표현할 경우에는 따..
가장 기본이 되는 데이터 타입으로 값의 표현 방식은 아래와 같습니다. 숫자 상수 앞 또는 끝에 영문자를 붙여서 진수 표현이나 데이터 타입을 지정할 수 있는데 상수 표현에 사용하는 B, X, L, E, J 등의 영문자는 대문자와 소문자 모두를 사용할 수 있습니다. ■ int 정수형 데이터 타입. 0으로 시작하면 8진수, 0x로 시작하면 16진수, 0b로 시작하면 2진수를 나타 냅니다. >>> 10 - 33-23>>> 0Xff - 1 #ff=255254>>> 070 + 1 #70=5657>>> 0b1010 + 10 #1010=10 ■ long 긴 정수형 데이터 타입. 상수 값 뒤에 L을 붙입니다. C언어와는 달리 길이 제한이 없습니다. >>> 2**324294967296L ■ float 부동소숫점 표현으로 ..
프로그래밍 언어 배우기를 시작 할 때 가장 추천하고 싶은 학습 방법은 손으로 직접 입력해 보고 그 결과를 확인하면서 한단계씩 프로그래밍 언어를 몸으로 체득하는 것입니다. 아주 오래전 생전 처음 8비트 퍼스널 컴퓨터를 가지고 베이직 언어를 접하며 컴퓨터를 배울 때를 떠올려 보면, 선생님이 칠판에 쓰신 따라서 코드를 직접 입력하여 결과를 확인하는 것으로 시작했던 기억이 있습니다. 처음에는 그저 따라하는 것이었지만 결과를 확인하며 즐거워 하는 친구들도 있었고 다양한 원인으로 헤매는 친구들도 있었습니다. 오타나 기타 이유로 원하는 결과가 나오지 않았을 때 그 원인을 찾아 수정하는 디버깅 과정에서 이해하고 배우는 효과는 프로그래밍 실력 향상의 첩경이라 하겠습니다. 첫 결과를 만난 다음에는 조금씩 나만의 의도를 적..
"파이썬 프로그램의 형태 1 - 파이썬 배우기(Python)"에 이어지는 글입니다.웹브라우저를 통해서 정보를 제공하는 사용자 인터페이스로 웹서버측에서 프로그래밍이 필요하고 아래와 같이 다양한 적용 방법이 있습니다.(참고 자료 http://docs.python.org/2/howto/webservers.html) CGI(Common Gateway Interface)mod_pythonFastCGI, SCGImod_wsgiTemplatesFrameworks ■ CGI(Common Gateway Interface) 웹서버와 파이썬 프로그램간의 가장 전통적인 인터페이스로 속도 및 기타 문제로 사용 할 수는 있지만 추천하지 않습니다. 되도록 WSGI(Web Server Gateway Interface)를 사용하도록 ..
어떤 프로그래밍 언어로 프로그램을 제작하더라도 본격적인 프로그램 제작 이전에 어떤 형태의 프로그램을 만들 것인지 방향성을 결정하는 것은 상당히 중요 합니다. 프로그램의 동작방식, 연관 범위, 인터페이스에 따라 프로그램의 구현 방식과 규모 등에 있어 큰 차이가 있기 때문에 파이썬을 배워나가는 사람의 입장에서도 이 부분에 대한 이해가 필수적이다 하겠습니다. 결론을 먼저 말한다면 파이썬은 단순 배치 프로그램 부터 시작하여 GUI 프로그램 및 웹 서비스까지 모든 분야에서 사용할 수 있는 매력적인 프로그래밍 언어 입니다. 다음은 사용자와의 인터페이스 관점에서 바라본 프로그램의 종류 입니다. ■ 일괄 작업 프로그램 배치(Batch program) 프로그램이라고도 부르는 것으로 콘솔창 또는 명령행(command li..