블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2737)
Unity3D (817)
Programming (474)
Python (8)
TinyXML (5)
STL (13)
D3D (3)
MFC (1)
C/C++ (54)
C++/CLI (45)
C# (250)
WinForm (6)
WPF (5)
Math (10)
A.I. (1)
Win32API (11)
Algorithm (3)
Design Pattern (7)
UML (1)
MaxScript (1)
FMOD (4)
FX Studio (1)
Lua (2)
Terrain (1)
Shader (3)
boost (2)
Xml (2)
JSON (4)
Etc (11)
Monad (1)
Html5 (4)
Qt (1)
Houdini (0)
Regex (10)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (228)
협업 (58)
3DS Max (3)
Game (12)
Utility (136)
Etc (96)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (53)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday
04-19 00:04

파이썬 배우는 기념으로 만든 소스(.h, .cpp)의 줄 수 세는 프로그램.
현재 디렉토리를 포함한 모든 하위디렉토리에 속한 소스의 줄 수를 보여준다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# -*-coding:utf-8-*-
import os
 
def count_line(filename):
    file    = open(filename)
    line_num    = 0
    while (file.readline()):
        line_num    += 1
    return line_num
 
def count_code_lines(dirname):
    file_line_list  = []
    filenames   = os.listdir(dirname)
    for filename in filenames:
        filename    = dirname + '\\' + filename
        if (os.path.isdir(filename)):
            file_line_list  += count_code_lines(filename)
        else:
            if ((len(filename) > len('.h') and filename[-2:] == '.h') or
                (len(filename) > len('.cpp') and filename[-4:] == '.cpp')):
                file_line_list.append((filename, count_line(filename)))
    return file_line_list
 
def get_dir_list(path):
    dir_list    = []
    if (os.path.isdir(path)):
        dir_list.append(path)
 
    header  = os.path.split(path)[0]
    if (header == ''):
        return dir_list
    else:
        dir_list    += get_dir_list(header)
 
    return dir_list
 
file_line_list  = count_code_lines('.')
 
dir_line_dict   = {}
 
for filename, line_num in file_line_list:
    dir_list    = get_dir_list(filename)
    for dir in dir_list:
        if (not dir in dir_line_dict):
            dir_line_dict[dir]  = 0
        dir_line_dict[dir]  = dir_line_dict[dir] + line_num
 
dirnames    = dir_line_dict.keys()
dirnames.sort()
 
for dirname in dirnames:
    print "%10d %s"%(dir_line_dict[dirname], dirname)

출력예 : 뭐, 대략 이런식

8388 .
 409 .\MemoryPool
 136 .\MemoryPool\profiler
 862 .\PicTest
 687 .\SimpleMFC
 403 .\SimpleMFC2
1627 .\SimpleTest
 142 .\SimpleTest2
  59 .\UDPClient
 155 .\UDPServer
 963 .\WebViewer
 112 .\cliWrap
  19 .\cppLib
2950 .\rvo_test
 136 .\rvo_test\profiler
 472 .\rvo_test\srv_cntr
2114 .\rvo_test\sti



반응형
Posted by blueasa
, |

오류코드

Programming/Python / 2012. 5. 10. 15:53

1) 오류코드 : SyntaxError: Non-ASCII character '\xc7' in file 
2) 원인 : 문자 인코딩 오류로 한글이 코드에 들어갈대 생기는 문제, 링크 따라가면 해결 방법 나옴.
3) 해결 : 소스 맨 위에 다음 문장 추가,
          - 한글 해결  : # -*- coding:cp949 -*-
          - unicode 해결 : # -*- coding:utf-8 -*-

 

 

1) 오류코드 : AttributeError: debugger instance has no attribute 'open_process'
2) 원인 : '해당명' 인스턴스(객체)가 없다는 오류, 저 함수 open_process가 없다는 내용이다.
3) 해결 : 오류난 줄로 가서 해당 함수명을 조사해 보면..  대부분 오타이다!! ㅋ

 

 

 

1) 오류코드 : NameError: global name 'DEBUG_EVENT' is not defined
2) 원인 : 해당 객체가 정의되지 않았다.
3) 해결 : 해당 내용이 생성 및 정의되어 있는지 확인해 본다.



[출처] Python 오류코드|작성자 msBang

반응형
Posted by blueasa
, |

# 문자열 포맷 코드
%s 문자열 (String)
%c 문자 한개 (character)
%d 정수 (Integer)
%f 부동소수 (floating-point)
%o 8진수
%x 16진수
%% Literal % (문자 '%s' 자체)

 


# 자주 사용되는 슬라이싱 예 - 문자열 자르기
>>> a = "20110406Clean"
>>> date = a[:8]
>>> weahter = a[8:]
>>> date
'20110406'
>>> weather
'Clean'

 


# 2개 이상의 값을 치환 - 문자열 포매팅(Formatting)
>>> number = 10
>>> day = "three"
>>> print "I eat %d apples. so I was sick for %s days." % (number, day)
I eat 10 apples. so I was sick for three days.

 


# 문자 갯수 세기(count)
>>> a = "hobby"
>>> a.count('b')
2

 


# 문자 위치 알려주기1(find)
>>> a = "Python is best choice"
>>> a.find('b')   // 존재하지 않으면 -1 반환
10

 

 

# 문자 위치 알려구지2(index)
>>> a = "Life is too short"
>>> a.index('t')
8

 


# 문자열 삽입(join)
>>> a = ","
>>> a.join('abcd') // 문자열의 각각의 문자사이에 변수 a의 값을 삽입
'a,b,c,d'

 


# 왼쪽 공백 지우기(lstrip)
>>> a = " hi"
>>> a.lstrip()
'hi'

 

 

# 오른쪽 공백 지우기(rstrip)
>>> a = "hi "
>>> a.rstrip()
'hi'

 

 

# 양쪽 공백 지우기(strip)
>>> a = " hi "
>>> a.strip()
'hi'

 


# 문자열 바꾸기(replace)
>>> a = "Life is too short"
>>> a.replace("Life", "Your leg")
'Your leg is too short'

 


# 문자열 나누기 (split) - 결과는 list에 저장됨
>>> a = "Life is too short"
>>> a.split()
['Life', 'is', 'too', 'short']

>>> a = "a:b:c:d"
>>> a.split(':')
['a', 'b', 'c', 'd']



[출처] 파이썬 팁) 문자열 다루기|작성자 msBang

반응형
Posted by blueasa
, |

Q. C에서 파이썬 사용이 가능한가?

 

예. 가능합니다. 
파이썬에서 C프로그램을 쓰는 것을 extending이라고 부르고, C프로그램에서 파이썬을 쓰는 것을 embedding이라고 부릅니다. 
파이썬 매뉴얼에 관련 내용이 포함되어 있습니다.

 

http://docs.python.org/ext/ext.html 
http://docs.python.org/ext/embedding.html
_________________
http://twitter.com/hyeshik



[출처] C에서 파이썬 사용이 가능한가?|작성자 msBang

반응형
Posted by blueasa
, |

WxPyWiki 페이지 입니다
공부하려고 한참을 찾다 구글링으로 찾았습니다
Python의 GUI 툴인 WxGlade의 튜토리얼 입니다
각각 함수에 대한 API와 상세 설명 메소드 설명 소스코드와 스샷들이 포함되어 있습니다
메소드(methods) 하나하나에 대한 모든 코드들이 구현 되어 있어서 공부하거나 사용할 참고하세요 
굉장히 설명이 잘 되어 있습니다 

튜토리얼 한페이지에 모든 글이 포함되어 있어서 로딩 시간이 조금 오래 걸릴 수 있습니다 







차례

  1. The wxPython Linux Tutorial
    1. Foreword
    2. wxPython API
    3. First Steps
      1. wx.Window
      2. wx.Frame
      3. wx.MenuBar
      4. wx.ToolBar
    4. Layout Management
      1. wx.BoxSizer
      2. wx.GridSizer
      3. wx.GridBagSizer
    5. Basic Objects
      1. Cursors
      2. Fonts
      3. Colours
      4. Bitmaps
    6. Events
      1. Examples
    7. Dialogs
      1. Custom dialogs
      2. Common Predefined Dialogs
    8. Core Widgets
      1. wx.Button
      2. wx.ToggleButton
      3. wx.BitmapButton
      4. wx.StaticLine
      5. wx.StaticText
      6. wx.StaticBox
      7. wx.ComboBox
      8. wx.CheckBox
      9. wx.StatusBar
      10. wx.RadioButton
      11. wx.Gauge
      12. wx.Slider
      13. wx.ListBox
      14. wx.SpinCtrl
      15. wx.ListCtrl
      16. wx.SplitterWindow
      17. wx.ScrolledWindow
      18. wx.TreeCtrl
      19. wx.Notebook
    9. wx.lib Classes
      1. Mouse Gestures
      2. AnalogClockWindow
      3. Bitmap Text Buttons
    10. Advanced Widgets
      1. CalendarCtrl
      2. LEDNumberCtrl
    11. Creating a taskbar application
    12. wx.TheClipboard
    13. Drag and Drop
    14. Plotting
    15. Configuring application settings
    16. wxPython functions
      1. System functions
      2. Dialog functions
      3. Other functions
    17. Using xml resource files
    18. Skeletons
      1. File Hunter
      2. SpreadSheet
    19. Tips And Tricks
      1. PopupMenu
      2. The tiniest wxPython application
      3. Interactive Button
      4. Error handling without dialogs
      5. UndoRedoFramework
    20. Gripts
      1. Tom
      2. Editor
      3. Kika
    21. Appendix
      1. Cursor IDs
      2. wx.Frame styles
      3. Standard Colour Database
      4. wx.Pen styles
      5. wx.Brush styles
      6. CalendarCtrl styles
      7. Keycodes
    22. Comments...







WxGlade에 대한 여려 튜토리얼 링크가 있는 페이지 입니다
http://wiki.wxpython.org/WxGladeTutorial


가장 기본 튜토리얼 페이지 입니다
http://wiki.wxpython.org/index.cgi/AnotherTutorial 


출처 : http://paranwater.tistory.com/180

반응형
Posted by blueasa
, |

Python을 설치하면 기본적으로 파이썬 셸과 IDLE이 설치됩니다.
하지만 윈도우에서 텍스트 에디터 또는 이클립스 등 다른 개발환경에 익숙해져 버린 저는 조금 어색하기만 합니다.

그래서 수소문하다보니 PyScripter라는 무료 IDE(통합개발환경:Integrated development environment)이 있더군요^^ 아싸!

어떤 언어를 배우기 위해서 환경을 꾸리는 일은 너무도 당연한 일이라고 생각해서 지나칠 수 있지만
대부분의 책머리에 이런 환경을 꾸리는 방법을 설명하듯이 저도 시작합니다!!

PyScripter 설치하기!!

먼저 PyScripter를 다운 받기 위해서 http://code.google.com/p/pyscripter/ 에 접속합니다. 
구글에서 PyScripter를 검색하셔도 링크가 나옵니다.



상단 메뉴의 Downloads를 클릭하기면 PyScripter 설치 파일을 다운로드 할 수 있습니다.



압축 파일 하나와 설치 파일 두개가 보일 겁니다. 자신의 컴퓨터 환경에 맞는 버전을 다운 받으시면 됩니다.
(저는 64bit 윈도우를 사용하기 때문에 64용 설치 파일을 다운 받았습니다.)



이제 다운로드 받은 파일을 실행합니다!
인터넷 익스플로러의 SmartScreen 필터 기능을 사용하신다면 설치 파일을 실행시 경고 메시지가 뜰 수 있습니다.
이 때  [작업] 버튼을 눌러 프로그램을 강제로 실행시켜 주시면 설치가 진행됩니다.



지금부터는 너무나 쉽습니다. 곰플레이어 설치하듯이 네이트온 설치하듯이 넘어가주시면 됩니다.



우선 설치할 폴더 경로를 확인하고 다음으로 넘어갑니다.



시작 메뉴에 등록할 이름을 지정하고 다음으로 넘어갑니다.



설치할 PyScripter에 대한 정보를 확인하고 다음으로 넘어갑니다.
제가 받은 PyScripter는 최소한 Python2.4 버전 이상은 설치 돼있어야 한다고 적혀있네요.



다음 바탕화면과 빠른실행메뉴에 추가적으로 아이콘을 생성할지 선택하고,
탐색기의 context menu에 "Edit with PyScripter"라는 항목을 넣을지 선택합니다.(마우스 우클릭 시 나오는 메뉴에요.)



실제 설치가 되기전 마지막으로 선택 사항들을 확인하고 Install 버튼을 클릭!!!!



설치는 순식간에 끝납니다.(캡쳐하기조차 힘들었네요;;;)



설치가 끝나고 또 PyScripter에 대한 정보가 출력됩니다 .블라블라~~ @ㅁ@;;



설치가 끝났습니다 PyScripter를 바로 실행 하시려면 Launch PyScripter를 체크하고 Finish를 눌러줍니다.



짜잔~~ 오오 그래도 뭐가 편집기도 있고 탐색기도 있고 파이썬 인터프리터도 함께 뜨는 모양새 있는 파이썬 개발 환경이 설치 됬습니다. 이제 공부 열심히 할 일만 남았네요 에공. 화이팅!!



반응형
Posted by blueasa
, |

파이썬(Python)에 대한 몇몇 글을 쓴 적이 있는데 정작 파이썬을 설치하는 방법은 소개한 적이 없네요.
이제 막 파이썬을 시작하시는 분들을 위해서 파이썬 설치에 대해서 간략히 소개하겠습니다^^
저는 Python 3.2.2 버전으로 공부를 하고 있으므로 이 버전의 설치에 대해서 쓰도록 하겠습니다.

우선 파이썬이라는 언어는 공개되어 있고 무료입니다.
즉 필요하다면 다운받아서 사용하면 된다는 것이죠.


먼저 http://www.python.org에 접속합니다.
구글이나 네이버등 검색 사이트에서 'python' 또는 '파이썬'으로 검색하셔도 최상위에 검색 결과가 나올겁니다.



페이지 왼쪽에 몇가지 메뉴가 보입니다. 이중에 DOWNLOAD를 클릭하세요!



Download Python 페이지에서 스크롤을 조금만 내리시면 Python 3.2.2 에대한 여러가지 배포판 링크가 보입니다.
여러분의 컴퓨터 환경에 맞는 bit와 OS를 선택해서 다운 받습니다. 
저는 Windows 64bit 환경에서 사용할 것이므로 Python 3.2.2 Windows X86_64 MSI Installer를 다운 받았습니다.



다운로드가 완료되면 설치 파일을 실행 합니다.



윈도우에서의 설치는 우리가 흔히 알집이나 곰플레이어를 설치할 때처럼 편하게 진행됩니다.
먼저 윈도우 사용자 중 누가 파이썬을 사용할지에 대한 선택부터 시작됩니다. 저는 제 컴퓨터를 혼자 쓰므로 Install for all users를 선택했습니다. 혹시 여러 사용자가 같이 사용하는 컴퓨터에서 혼자 사용하시려면 Install just for me를 선택하시면 됩니다.



그 다음 Python을 설치할 폴더를 정해줍니다. Python 3.2.2의 기본 경로는 C:\Python32\로 지정되어 있군요.



마지막으로 선택사항에 대해 물어보는데요 다음으로 넘어가시면 되겠습니다. 각 항목을 선택하면 아래 상자에 항목에 대한 설명이 나옵니다. 참고하세요.



설치가 진행됩니다.
진행 중 아래와 같이 사용자 계정 컨트롤 메시지가 나온다면 반드시 '예'를 클릭 하셔서 설치가 진행되도록 해주세요. '아니오'를 클릭하시면 당연히 설치가 안됩니다.



설치가 완료되었습니다. 이제 파이썬을 사용할 수 있습니다.

 

시작 메뉴에서 Python 3.2라는 폴더가 등록 되었군요.



이대로 파이썬을 사용할 수도 있지만 좀 더 편리하고 원활한 사용을 위해서 환경 변수 Path에 Python이 설치된 경로를 추가해 줍니다.
[제어판] - [시스템 및 보안] - [시스템] 에서 왼쪽 메뉴의 [고급 시스템 설정] 을 선택합니다.



시스템 속성 창이 뜹니다. 그러면 고급 탭을 선택하고 아래의 환경 변수를 선택합니다.


환경 변수 창에서 시스템 변수 Path를 찾아서 선택한 후 편집을 클릭합니다.


변수 값에 다른 값들이 있다면 지우지 마시고 그 변수의 마지막에 ;(세미콜론)을 적으시고 그 다음에 Python의 설치된 경로명을 적어줍니다. 


이렇게 환경 변수 Path를 지정해 주시면 사용자가 어떤 위치에서 python을 실행 시키더라도 Python 설치 경로에 있는 Python.exe가 실행 됩니다. 



이렇게 파이썬을 공부하기 위한 첫번째 준비! Python 설치하기가 끝났습니다^^ 
다같이 Python 세계에 빠져 봅시다!



출처 : http://kkoseul.tistory.com/136

반응형
Posted by blueasa
, |

이 책은 파이썬이란 언어를 처음 접해보는 독자들과 프로그래밍을 한 번도 해 본적이 없는 사람들을 대상으로 한다. 프로그래밍을 할 때 사용되는 전문적인 용어들을 알기 쉽게 풀어서 쓰려고 노력하였으며, 파이썬이란 언어의 개별적인 특성만을 강조하지 않고 프로그래밍 전반에 관한 사항을 파이썬이란 언어를 통해 알 수 있도록 알기 쉽게 설명하였다.

 

파이썬에 대한 기본적인 지식을 알고 있는 사람이라도 이 책은 파이썬 프로그래밍에 대한 흥미를 가질 수 있는 좋은 안내서가 될 것이다. 이 책의 목표는 독자가 파이썬을 통해 프로그래밍에 대한 전반적인 이해를 갖게하는 것이며, 또 파이썬이라는 도구를 이용하여 원하는 프로그램을 쉽고 재미있게 만들 수 있게 하는 것이다.

 

이 문서가 마음에 드신다면 추천 한표 부탁드려요~! ^^


파이썬
python
입문서
약 1주, 6일 전에 마지막으로 수정
26
※ 이 문서에 투표 해 주세요.




출처 : http://codejob.co.kr/docs/view/2/

반응형
Posted by blueasa
, |