Programming Language/Python 25

[Python] 24. GUI(Graphic User Interface) - tkinter

GUI(Graphic User Interface) - tkinter Tcl/Tk 툴킷을 사용하는데 필요한 인터페이스 모듈 (Std library) import tkinter as tk root = tk.Tk() # 실행했을 때 나타나는 창 root label = tk.Label(root, text='Hello World') # root 창에 포함되는 컴포넌트로 label 생성 label.pack() # label 객체를 창에 표시 root.mainloop() # root 창을 event loop에 들어가게 하여 root 창이 종료되지 않고 일을 계속 수행 블로그 프로그램을 만든다고 할 때 사용되는 tkinter component ListBox : 블로그의 목록 Label : '제목&..

[Python] 23. 정규 표현식(regular expression)

정규 표현식 정규 표현식이란? 정규 표현식 : 복잡한 문자열을 처리할 때 사용하는 기법 파이썬 말고도 다른 곳에서도 사용함 정규 표현식이 필요한 이유? example : 주민번호 뒷자리 7자리를 *로 변환하기 data = """ park 800905-1049118 kim 700905-1059919 """ result = [] for line in data.split('\n'): word_result = [] for word in line.split(" "): if len(word) == 14 and word[:6].isdigit() and word[7:].isdigit(): word = word[:6] + "-" + "*******" word_result.append(word) result..

[Python] 22. 표준 라이브러리(Standard Library)(2)

표준 라이브러리(standard library)(2) fnmatch Unix-sytle Pattern Matching 유닉스 shell에서 사용되는 rule에 따라 특정 패턴과 일치하는 string을 찾음 fnmatch(text, pattern) text가 pattern과 match하는지 Test (T/F) 대소문자 구분하지 않음(case-insensitive) fnmatchcase(text, pattern) fnmatch와 유사하나, 대소문자를 구분함 filter(iterable, pattern) 패턴을 만족하는 iterable에 있는 요소들의 list를 반환 example import fnmatch descs = ['My name is Lee and my E-mail is kim@google...

[Python] 21. 표준 라이브러리(Standard Library)(1)

표준 라이브러리(Standard Library) (1) 프로그래밍 언어의 기본 기능과 기능을 확장하는 데 사용할 수 있는 기본적인 모듈과 함수의 집합 Library : 원하는 정보(프로그램)를 찾아 사용하자 프로그래머가 기본적인 작업을 수행하기 위해 처음부터 모든 것을 작성하지 않고, 이미 구현된 함수와 모듈을 사용하여 빠르고 효율적으로 프로그램을 작성할 수 있도록 도와준다. sys 모듈 파이썬 인터프리터가 제공하는 변수와 함수를 직접 제어할 수 있게 해주는 모듈 sys.argv 명령행에서 인수 전달하기 # Terminal, cmd, prompt에서 python test.py abc pey guido --> 파일이름 뒤에 있는 값들이 sys.argv 리스트에 추가됨 sys.exit() 강제로 스크립트 종..

[Python] 20. 내장 함수(Built-in-function)

내장 함수 (Built-in-function) abs 함수 abs(x) 어떤 숫자를 입력받았을 때 그 숫자의 절댓값을 돌려주는 함수 abs(-3) res : 3 all 함수 all(x) 반복 가능한(iterable) 자료형 x를 인수로 받아 x가 모두 참이면 True, 거짓이 하나라도 있으면 False 돌려줌 all([1, 2, 3]) res : True all([0, 1, 2]) res : False any 함수 any(x) x 중 하나라도 참이 있으면 True, x가 모두 거짓일 때 False 돌려줌 any([1, 2, 3, 0, 4]) res : True any([0, ""]) res : False chr 함수 chr(i) 아스키 코드값을 입력받아 그 코드에 해당하는 문자를 출력하는 함수 chr(9..

[Python] 19. 예외처리(Exception Handling)

예외처리(Exception Handling) Exception 프로그램 실행 중 특별한 처리가 필요한 변칙적이거나 예외적인 조건 파이썬에는 많은 Bulit-in Exception 들이 존재함 ex) 0으로 나누는 경우 ex) 없는 파일을 'r' 모드로 읽으려고 하는 경우 이러한 예외 상황을 다루기 위해 Exception Handling을 해준다 오류 예외 처리 기법 try.except문 try 블록 수행 중 오류가 발생하면, except블록 실행. try 블록 수행 중 오류가 발생하지 않으면, except 블록 실행 X try: ... except [발생 오류 [as 오류 메시지 변수]]: ... []기호는 괄호 안의 내용을 생략할 수 있다는 관례 표시 except 구문을 사용하는 3가지 ..

[Python] 18. 패키지(package)

패키지(package) 패키지란 무엇인가? 패키지는 도트를 사용하여 파이썬 모듈을 계층적(디렉토리 구조)으로 관리할 수 있게 해줌 모듈이름이 A.B인 경우에 A는 패키지 이름, B는 A 패키지의 모듈이 된다. game/ __init__.py sound/ __init__.py echo.py wave.py graphic/ __init__.py screen.py render.py play/ __init__.py run.py test.py game, sound, graphic, play는 directory 이름 .py 파일은 모듈 game directory가 root directory임 sound, graphic, play는 sub directory임 패키지 구조로 파이썬 프로그램을 만들면 공동작업이나 유지보수..

[Python] 17. 모듈(module)

모듈(module) 모듈이란? 함수나 변수 또는 클래스를 모아 놓은 파일 다른 파이썬 프로그램에서 불러와 사용할 수 있게 만든 파일이기도 하다. 이미 만들어 놓은 모듈을 사용할 수도 있고, 직접 만들 수도 있다. 모듈 만들기 mod1.py에 덧셈, 뺄샘 함수를 만들었는데, 이 파일을 모듈이라 할 수 있다. 모듈 불러오기 import 대화형 인터프리터 사용 시 디렉토리를 모듈 파일이 존재하는 곳으로 이동시켜야만 import 할 수 있음. 환경변수나 sys.path모듈을 이용하여 모듈을 이동시키지 않고 import 할 수 있다. 형식 : import 모듈이름 (.py 쓰면 안됨!!) import mod1 print(mod1.add(3,4)) res : 7 print(mod1.sub(3,4)) res : -1..

[Python] 16. 클래스(Class), 상속(inheritance)

클래스, 상속 클래스와 객체 과자를 만드는 틀 -> 클래스 틀을 이용해 만든 과자 -> 객체 객체와 인스턴스의 차이 a = Cookie() 에서 a는 객체, a 객체는 Cookie의 인스턴스이다. 인스턴스 : 특정 객체가 어떤 클래스의 객체인지 관계 위주로 설명할 때 사용하는 말 사칙연산 클래스 만들기 class FourCal: def setdata(self, first, second): self.first = first # a.first = first, a 객체에 객체변수 first가 생성되고 값이 저장된다. self.second = second # a.second = second, a 객체에 객체변수 second가 생성되고 값이 저장된다. def add(self): return self.first +..

[Python] 15. 파일 입출력(FILE Input/Output)

파일 입출력(FILE I/O) 파일 다루기 : open() 함수 open 함수 원형 open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) file 매개변수는 반드시 명시적으로 밝혀줘야 함 file : 파일 Directory 파일 열기 모드 r : 읽기 모드 파일을 읽기만 할 때 사용 w : 쓰기 모드 파일에 내용을 쓸 때 사용 해당 파일이 이미 존재하는 경우 내용이 모두 사라지고(truncate) 파일이 없으면 새로 생성됨 특정 경로에 생성하고 싶으면 디렉토리까지 적어주자. a : 추가 모드 파일의 마지막에 새로운 내용을 추가할 때 사용 x : 베타적 생성 모..