파이썬 41

[Python] 파이썬 넘파이(numpy) 사용법

넘파이(numpy)란? 파이썬에서는 배열 자료형을 자체적으로 제공하지 않는다. 따라서 배열을 구현한 다른 패키지를 import 해줘야 한다. 넘파이는 파이썬에서 배열을 사용하기 위한 대표적인 라이브러리다. 고차원 배열을 쉽게 만들고 사용 할 수 있다. 넘파이 VS 리스트 많은 숫자를 하나의 변수에 넣고 관리 할 때 리스트는 속도가 느려지고 메모리를 많이 차지 한다. 하지만 넘파이를 사용하면 적은 메모리로 많은 데이터를 빠르게 처리 할 수 있다. 그래서 넘파이를 많이 사용한다. 넘파이와 리스트는 활용 방법이 비슷하지만 다른 점은 아래와 같다. 1. 넘파이는 모든 원소가 같은 자료형이어야 한다. 2. 넘파이는 원소의 개수를 바꿀 수 없다. 넘파이 패키지 import 넘파이는 np라는 이름으로 import하는..

Python 2024.02.08

[Python] 파이썬 all, any 함수 사용법과 예제

all 함수란? all() 함수는 반복 가능한(iterable) 자료형을 인수로 받아 인수가 전부 참이면 Ture를 반환하며, 인수 중 하나라도 거짓이면 False를 반환하는 파이썬 내장 함수다. 여기서 반복 가능한 자료형이란 리스트, 튜플, 딕셔너리, 집합, 문자열을 뜻한다. all() 함수 예제 1. 숫자로 이루어진 리스트 리스트 1,2,3 요소가 모두 참이므로 True를 반환한다. a = all([1,2,3]) print(a) 결과 : True 2. 0을 포함한 숫자로 이루어진 리스트 리스트에 있는 0은 거짓(False)이므로 False를 반환한다. a = all([1,2,3,0]) print(a) 결과 : False 3. True, False로 이루어진 리스트 리스트에 False 요소가 있으므로 ..

Python 2024.02.08

[Python] 파이썬 예외 처리(try, except/ finally/ pass/ raise)

예외 처리란? 파이썬에서 프로그램을 실행 했을 때 에러가 발생하면 프로그램이 강제 종료된다. 하지만 에러가 발생해도 프로그램을 계속 실행 시키고 싶을 때 가 있다. 이 때 예외 처리를 하면 에러를 무시하고 프로그램이 계속 정상적으로 작동한다. 예외 처리 왜 사용 할까? 예외 처리를 왜 사용하는지 예제를 통해 알아보자. 2를 0으로 나누기 일반적으로 2/0을 출력 하면 에러가 발생하여 프로그램이 실행되지 않는다. #test.py print(2/0) 결과 : File "C:\Users\skek1\PycharmProjects\pythonProject1\test.py", line 2 print(2/0) IndentationError: unexpected indent 예외 처리 하여 2를 0으로 나누기 하지만 예..

Python 2024.02.08

[Python] 파이썬 패키지(Packages) 생성과 사용법

패키지(Packages)란? 패키지는 모듈과 디렉토리로 이루어져 있으며 도트(.)를 사용하여 모듈을 계층적(디렉토리 구조)로 관리 한다. 패키지 구조로 프로그램을 만들면 유지보수, 공동작업 할 때 유용하게 사용 할 수 있다. 쉽게 설명하자면 폴더 안에 있는 모듈들을 사용하고 관리하는 것이 패키지다. 예제를 보면서 패키지를 이해해보자. 패키지 만들기 우선 모듈로 사용할 A.py, B.py 파일을 만들었다. A.py #A.py def print1(): return print("A 입니다.") B.py #B.py def print1(): return print("B 입니다.") C:\Packages\a 폴더에 A.py, C:\Packages\b 폴더에 B.py를 옮겼다. 하지만 A.py와 B.py만 추가하는 ..

Python 2024.02.08

[Python] 파이썬 모듈(module) 생성과 사용법

모듈(module)이란? 모듈은 변수, 함수 또는 클래스를 모아 놓은 파일을 말한다. 파이썬에서 코딩을 할때 모듈을 불러와 사용 할 수 있다. 쉽게 말하면 또 다른 파이썬 파일을 불러와 현재 파이썬 파일에서 사용가능 하게 해주는게 모듈이다. 모듈의 확장자는 .py 다. 모듈 만들기 파이썬 대화형 인터프리터든 파이참을 사용 하든 모듈 만드는 방법은 같다. 모듈 만드는 방법을 알아보자. 나는 파이참을 사용했다. 1. 프로젝트 우클릭 -> new 좌클릭 -> python file 좌클릭 2. python file 클릭 -> module 이라고 이름을 입력 -> 엔터. 3.module.py 파일이 생성 되었다. 4. sum 함수 하나랑, math 클래스 내용을 적고 Ctrl + S 눌러서 파일 저장. def s..

Python 2024.02.08

[Python] 파이썬, 파이참(pycharm) 다른 경로에 있는 모듈 불러오기

다른 디렉토리에 있는 모듈을 불러오는 방법은? 일반적으로 모듈을 불러 올 때 프로젝트 내 경로에 모듈이 없으면 에러가 발생한다. 하지만 sys모듈 이나 환경 변수를 사용하면 다른 경로에 있는 모듈을 불러내도 오류가 발생하지 않고 import 할 수 있다. 두 가지 방법에 대해 알아보자. 불러올 모듈의 위치와 코드 내용 경로가 다른 모듈 불러오는 방법에 대해 설명하기 전 모듈의 위치와 코드 내용을 첨부. 모듈로 사용할 module.py은 현재 프로젝트 폴더가 아닌 C 드라이브에 있다. module.py 의 코드 내용은 아래와 같다. #module.py def sum(a,b): return a + b if __name__ == "__main__": print(sum(1,2)) sys 라이브러리 모듈 사용하여..

Python 2024.02.08

[Python] 파이썬 메서드 오버라이딩 이란?

메서드 오버라이딩 이란? 오버라이딩(Overriging)은 재정의라는 뜻이다. 부모 클래스에 있는 메서드를, 자식 클래스에서도 똑같은 이름으로 메서드를 만드는 것을 메서드 오버라이딩 이라고한다. 이름이 메서드를 호출하면 부모 클래스가 아닌 자식 클래스의 메서드가 호출된다. 예제를 통해 알아보자. 메서드 오버라이딩 예제 상속 받은 children 클래스의 객체 a가 output 메서드를 호출 했을 때 부모 메서드가 아닌 자식 메서드를 호출한다. class parents: #보모 클래스 def output(self): return "부모 메서드" class children(parents): #자식 클래스 def output(self): #메서드 오버라이딩 return "자식 메서드" a = children(..

Python 2024.02.08

[Python] 파이썬 클래스 상속 정리

클래스 상속(class Inheritance)이란? 클래스 상속이란 상속이란 말 그대로 부모 클래스의 기능을 자식 클래스가 물려 받는 것을 말한다. 클래스 상속하는 방법 클래스를 상속 하려면 아래 예제 같이 작성하면 된다. children 클래스가 parents 클래스의 기능을 상속 받아 add 메서드 사용 가능하게 된다. 따라서 children이 자식 클래스, parents 가 부모 클래스가 된다. class parents: #보모 클래스 def add(self,a,b): return a + b class children(parents): #자식 클래스 pass 자식 클래스에서 부모 클래스 기능 사용하기 children 클래스로 객체 a를 만들어서 add 메서드를 사용하면 된다. class parent..

Python 2024.02.08

[Python] 파이썬 클래스 & 객체 사용법 (클래스 생성/ 객체 생성/ 메서드 생성/ 생성자/ 소멸자)

절차지향 VS 객체지향 클래스의 유무는 절차지향 과 객체지향 프로그래밍의 차이점 중 하나다. 절차지향 프로그래밍 언어(ex : C언어)는 클래스가 없다. 하지만 객체지향 프로그래밍 언어인 파이썬은 클래스가 있다. 클래스(Class)와 객체(Object) 함수나 변수 등을 모아둔 틀을 클래스라고 한다. 이런 클래스의 기능들을 사용하기 위해서는 객체를 선언한다. 클래스 하나만 만들어 두면 객체를 여러개 선언해 기능을 가져다가 쓰면 되므로 생산성을 높일 수 있다. 사실 위에 설명 만으로는 이해가 잘 가지 않을 거므로, 예제 보면서 이해하는 것이 편하다. 클래스, 객체, 메서드, 생성자, 소멸자, 인스턴스 6개의 용어를 확실하게 이해하고 직접 실습해 보면된다. 클래스(Class) 만들기 Test 라는 클래스를 ..

Python 2024.02.08