프로그래밍/Python 30

Python GUI 프로그래밍 시작

1. Python GUI 환경 설치 Python에서 GUI가 된다고???? 예 ,, 생소하더군요...저는 GUI에 능하지 않습니다. Java swing의 경우는 많은 삽질로 인해서 경험을 해보았으며, MFC의 경우 VIew는 도구상자의 어택이 있으므로 패스 하자면, Win32 api의 경우 View단이 까다로웠던 기억이 납니다. 파이썬에서 어떻게 해야 할까??? 우선 라이브러리 설치가 필요로 합니다. WXPython 라이브러리가 필요로 합니다. 예전에는 PyQT를 많이 쓰셨다던데 저는 친구와 작업중인 프로젝트 관련 작업중이라.. 뭐 곧 여기에도 프로그램을 올릴 수 있으면 좋겠네요 ^^ 다운로드 : http://www.wxpython.org/download.php 2. WXPython 설치 설치 캡쳐는 제..

python - pip 설치 하기

윈도우의 경우 http://python-distribute.org/distribute_setup.py 이 곳에서 먼저 distribute를 설치하고 pip를 설치 해야 한다. 그 후 python distribute_setup.py 콘솔창에서 입력 해주기! 그 후 pip를 설치하자!! https://raw.github.com/pypa/pip/master/contrib/get-pip.py python get-pip.py 그 후 파이썬이 설치 된 디렉토리를 가게 되면 Scripts 디렉토리가 있을 것이다. 그 안에 있는 pip를 이용하자. 리눅스의 경우 1. 리눅스 계열 easy-install 설치 https://pypi.python.org/pypi/distribute 그 후 터미널에서 python setup..

Python IDE - pycham 설치 가이드

사실 딱히 다른 설명보다는 위키독스 링크를 거는게 나을 듯 싶다. 윈도우 환경에서야 뭐 마우스 클릭하면 끝나니... https://www.jetbrains.com/pycharm/ 이 사이트로 이동하면 pycham을 다운 받을 수 있다. 윈도우의 경우 윈도우 버젼에 맞게 msi형태로 제공을 하게 될 것이고, 리눅스의 경우 tar로 압축된 파일을 다운 받으면 된다. 윈도우의 설치경우 https://wikidocs.net/993 위키독스 파이썬을 참조 하면 될듯 싶다. 리눅스의 경우 현재 ubuntu 설치 해본 결과 굉장히 쉽다. 우선 다운로드를 받은 후 디렉토리를 이동하자. cd 다운로드/ 그 이후 ls 명령어로 검색을 해본다. 그럼 분명히 pycham~로 시작하는 무언가 있을텐데 tar -zxvf pych..

Class의 등장 3탄 상속??

상속이란 보통 말 그대로 물려받는다는 의미입니다. 프로그래밍 세계에서도 상속의 개념이 있습니다. 정말 말그대로 무언가를 물려 받습니다! 과연 그것이 뭘까요?? 우선 상속 배우기전에 앞서 설명을 들어보자!! >>> class Choi: lastName = "choi" def __init__(self,name): self.fullName = self.lastName + name def printName(self): print("%s" % self.fullName) def __del__(self): print("class delete") 이런 구조의 클래스를 작성해보았습니다. 우선 __del__ 함수는 넘어갑니다! 생성자에서 지금 성이 choi와 객체 생성시 입력받은 인자와 문자열 덧셈을 하고 있습니다. 그걸..

Class의 등장 2탄

모든 메서드의 첫 번째 인자는 self입니다. 클래스에 정의된 모든 메서드가 self를 필요로 합니다. 파이썬은 모든 메서드의 첫 번째 인자를 호출할 객체가 되도록 합니다. 객체에 메서드를 호출할 때 파이썬은 첫 번째 인자가 호출한 객체가 되로록 한다는 말이 무엇일까! >>> class Strlen: def __init__(self,value=0): self.thing = value def how_len(self): return (len(self.thing)) 이러한 구조를 갖게 됩니다. 함수 how_len또한 첫 인자를 self로 받고 있습니다. >>> test = Strlen("Hello World") >>> test.how_len() 11 >>> 개발자 코드 test = Strlen("Hello W..

Class의 등장 1탄

코드와 관련된 데이터는 한데 모으는게 좋습니다. 즉, 비슷한 기능을 하는 함수등을 하나로 모아서 관리하는 것은 프로그래밍에서 보통 말하는 유지보수성이 좋아진다고 말한다. 유지보수성이란? 특정한 기능의 수정사항, 향상들을 위해 코드를 수정하는데 얼마나 힘들이지 않고, 코드를 수정할 수 있느냐.그런데 마구잡이로 구성이 되어있다면, 전체 코드를 손 봐야 한다는 것은 엄청 비효율적이라고 할 수 있습니다. 그래서 프로그래밍에서는 코드를 작성 할 때 항상 유지보수를 염두해 두어야 합니다 뭐.. 이렇게만 알고 넘어가죠! 그래서 파이썬에서도 클래스(Class)라는 것이 있는데, 프로그래밍을 해본 분들은 C++ , Java, C#에서 많이 보셨겠으나 프로그래밍을 안해보셨다면, OOP라는 것이 생소합니다. 물론 파이썬은 ..

새로운 데이터 구조 딕셔너리(dictionary)

리스트는 좋지만 구조가 복잡해진다면, 이야기가 달라진다. 그래서 파이썬 내장 데이터 구조 중에 딕셔너리라는 데이터 구조가 존재한다. 딕셔너리는 데이터 값과 키를 연결한다. 딕셔너리는 연관된 데이터를 보관하는 것이지 순서를 보장하는 것은 아니다. 딕셔너리의 구조는 {key 1: value1 , key2: value2 ....}이러한 구조를 하고 있다. 딕셔너리 예를 보도록 하자. >>> dic = {'name':'pey' , 'phone':'0110110111','brith':'110325'} >>> a = {1:'hi'} >>> print (a) {1: 'hi'} >>> print(a[1]) hi >>> a = { 'a' : [1,2,3]} >>> print (a['a']) [1, 2, 3] >>> { ..

중복 제거는 어떻게??? - 집합(set)

중복은 집합을 사용해서 제거 할 수 있습니다. 파이썬에는 리스트 외에 집합(set)데이터 구조를 제공합니다. 집합의 특징으로는 순서가 없고, 중복된 데이터를 가질 수 없다.는 것이 큰 특징입니다. 만약 집합에 데이터가 존재하고, 중복된 데이터를 추가하면 파이썬에서 그 데이터를 무시합니다. set()이라는 내장 함수를 이용하여 빈 집합을 생성 할 수 있으며, set()과 같은 함수를 팩토리 함수라고 합니다. *팩토리 함수란? 특정 형의 데이터 항목을 새로 만들기 위해 사용되는 것을 말합니다. >>> distances = {10.6,11,6,10.6,7,"one"} >>> print (distances) {10.6, 11, 'one', 6, 7} >>> 이런 식으로 사용 할 수 있습니다. '{' 와 '}'를..

지능형 리스트???

리스트를 다른 리스트로 변환을 할 때 필요한 일들! 1. 변환된 데이터를 보관할 리스트를 새로 만들어야 한다. 2. 원래 리스트의 모든 데이터 항목을 나열해야 한다. 3. 나열 하면서 각 데이터 항목을 변환해야 합니다. 4. 변환된 데이터를 새 리스트에 추가해야 합니다. >>> cp = [] >>> for each_item in li: cp.append(mySorted(each_item)) 먼저 cp 리스트 생성 후 for문으로 항목 나열 후 나열하면서 항목을 변환해야 하므로 mySorted함수를 호출 후 리턴을 받아서 추가해야 하는 것을 저렇게 표현 할 수 있다. 그러나 지능형 리스트라는 개념을 사용 할 수 있다. >>> cp = [mySorted(each_item) for each_item in li..

데이터를 저장하기?! - pickle 이용

파이썬은 피클이라고 하는 표준 라이브러리를 제공합니다. 모든 파이썬 데이터 객체를 저장하고 읽을 수 있습니다. 데이터를 파일에 피클링하면, 데이터는 영구적으로 존재하게 되고, 나중에 재사용이 가능합니다. 데이터 - 피클엔진 - 피클링 이러한 수순으로 과정이 진행 되는데 한 번 살펴 볼까요?>>> HoW?? 어떻게 하면 될까?? import pickle을 해준 뒤 dump라는 함수를 이용하여 데이터를 저장하고, 나중에 꺼낼 떄는 load()함수를 이용하면 된다. 단, 피클 파일로 작업 할 때는 파일을 이진 접근 모드로 열어야 한다. 파이썬의 pickle 모듈은 이진 형식으로 저장하므로 텍스트 편집기에서는 이상하게 보일 수 있다. import pickle man = [] other = [] try: data..

반응형