Python 46

[Python] 파이썬 deque(데크, 덱) 사용법 구현 예제

데크 = 덱이다. 사람마다 deque를 부르는 차이가있다.데크는 양쪽에서 삽입, 삭제가 가능한 구조다.파이썬에서 데크를 구현하려면 collections 모듈을 사용한다.맨 아래 전체 예제있다.  collections import데크를 사용하기 위해 임포트 해준다.import collections  데크 객체 생성dq = collections.deque()  오른쪽으로 삽입dq.append(i)  왼쪽으로 삽입dq.appendleft(i)  왼쪽 요소 삭제dq.popleft()  오른쪽 요소 삭제dq.pop()  파이썬 데크 구현 예제 코드위에서 본 collections 모듈 사용법으로 데크를 구현한 예제다.아주 간단하니 주석과 함께 읽어 보면 된다.import collections # 데크을 사용하기 위..

Python 2024.05.13

[Python] 파이썬 Queue(큐) 사용법 구현 예제

파이썬 queue 모듈을 통해 쉽게 구현해보자.큐는 선입선출 즉 가장 먼저 들어간 요소가 가장 먼저 삭제되는 자료구조다.우선 queue 모듈의 사용법을 알아보자.맨 아래에 전체 예제있다.   queue import큐를 사용하려면 queue 모듈 임포트를 해주면된다.import queue # 큐 모듈 임포트  Queue 객체 생성큐 객체를 생성해주는 부분이다. Maxsize에는 큐 최대 사이즈를 적어준다.q = queue.Queue(Maxsize) 큐 요소 삽입 함수q.put(item)  큐 요소 꺼내는 함수q.get()  큐가 비어있는지 확인하는 함수q.empty()   큐가 가득찬 상태인지 확인 하는 함수q.full()   파이썬 큐 구현 전체 코드파이썬에 요소를 사입한 후 삭제하며 출력하는 코드다.큐..

Python 2024.05.13

[Python] 파이썬 문자열 거꾸로 뒤집기 출력 예제

파이썬에서 스택 개념을 사용하면 문자열 뒤집기를 아주 쉽게 구현 할 수 있다. 스택(stack)스택은 자료구조 중 하나로 후입선출(LIFO : Last in First out)을 가진다.즉 먼저 들어온 데이터는 가장 마지막에 나가는 구조다. 문자열 거꾸로 뒤집기 예제append() 함수로 요소를 삽입해 주고pop() 함수로 맨 마지막 요소를 삭제해주면서 출력해 준다.s = list() # 리스트 생성str = input("문자열 입력:")# 문자열 입력 받기for char in str : #입력 받은 str 문자열 만큼 for문 반복 s.append(char) # char 문자를 스택에 삽입print("문자열 출력: ", end='') #end= '' 사용해서 줄바꿈 없이 출력while len(s)..

Python 2024.05.09

[Python] 파이썬 모듈 사용안하고 스택(stack) 구현하기 예제

파이썬에서 리스트를 사용하면 스택을 아주 쉽게 구현 할 수 있다. 스택(stack)스택은 자료구조 중 하나로 후입선출(LIFO : Last in First out)을 가진다.즉 먼저 들어온 데이터는 가장 마지막에 나가는 구조다.  우선 리스트에서 사용하는 append, pop 함수를 알아보자. append() 함수append 함수는 리스트에 순서대로 새로운 요소를 더해준다.s = list() # 리스트 생성s.append("1") # 리스트에 1추가s.append("2") # 리스트에 1추가s.append("3") # 리스트에 1추가print(s) #리스트 출력 결과['1', '2', '3']  pop() 함수pop 함수는 리스트에 마지막 요소를 삭제해준다.예제처럼 [1,2,3] 리스트에서 pop을 2번..

Python 2024.05.08

[Python] 파이썬 팩토리얼 구현 예제 (반복, 재귀(순환))

파이썬 팩토리얼 구현 예제 (반복, 재귀) 팩토리얼 구현 시 2가지 방법이 있다.1. 반복 (iterative)2. 재귀 (recursive) (순환 이라고도 부름)   둘의 차이점을 알아보자.  1. 반복 구조 팩토리얼 예제우리가 알고있는 팩토리얼의 기본적인 형태를 반복 구조 팩토리얼이라고 한다.예제도 for문을 이용해 팩토리얼 값을 구한다. 4! = 1 x 2 x 3 x 4 = 24def factorial_i(n): result = 1 for i in range(1, n + 1): result = result * i return resultprint(factorial_i(4)) 결과24   2. 재귀(순환) 구조 팩토리얼 예제재귀(순환)는 반복문 대신 자기 자신 함수를 호..

Python 2024.05.07

[Python] 파이썬 스택 구현 예제(queue LifoQueue)

queue 모듈 LifoQueue 클래스 사용해서 스택 구현 예제 queue 모듈에서 LifoQueue 클래스는 스택구조를 제공한다. 우선 스택 구현하기 전에 put, get, queue 에 대해 알아보자. put, get, queueput : 요소 삽입get : 마지막 요소 삭제queue : 현재 스택 요소들 출력import queue #queue 모듈 임포트stack = queue.LifoQueue(maxsize=100) # 스택 객체 생성, maxsize = 최대 용량stack.put("1") # char 문자를 하나씩 스택에 삽입stack.put("2") # char 문자를 하나씩 스택에 삽입stack.put("3") # char 문자를 하나씩 스택에 삽입print(stack.get()..

Python 2024.05.07

[Python] 파이썬 자료형 알아내는 함수 type()

함수 원형type() 함수안에다가 변수명이나 숫자, 문자를 작성해주면 된다.type()  예제type() 함수를 print 함수로 출력해주면 자료형이 나온다.a = 10print(type(a)) # intprint(type(111)) # intprint(type(111.1)) # floatprint(type("111")) # stringprint(type(True)) # boolprint(type(3+4j)) # complex 결과  자료형 정리int : 정수형float : 실수형string : 문자열bool : 참, 거짓complex : 복소수

Python 2024.05.07

[Python] lambda 람다식 사용법 map, filter, reduce 함수

파이썬에서 제공하는 lambda(람다식)을 사용하면 함수를 보기 좋게 바꿀 수 있다. 람다식은 문법이라서 굳이 import 같은 setting 안해줘도 된다. 또한 람다식과 함께 사용하면 좋은 map, filter, reduce 함수에 대해 알아보자. 기본적인 함수 sum 함수를 구현해주고 a + b 값을 return 받는 기본적인 함수 사용법이다. def sum(a, b): return a + b print(sum(1,2)) 결과 3 함수를 람다식으로 변경하기 위에 함수를 람다식으로 바꿔보자. 아래 예제 처럼 람다 함수를 한줄로 줄 일 수 있다. lambda 식에 a,b 는 매개변수가 되고 a + b 가 return 값이 된다. 따라서 1 + 2 = 3이 출력된다. sum = lambda a,b: a+..

Python 2024.04.23

[Python] 파이썬 matplotlib 원그래프, 파이차트 그리기, 파이차트 분리 시키기

기본적인 파이 차트 그리기 import matplotlib.pyplot as plt plt.title('Programming Language') #제목 size = [11, 8, 10, 14, 7, 50] #점유율 labels = ["C", "java", "C++", "Python", "C#", "etc"] plt.pie(size, labels = labels)# 파이 차트 그리기 plt.show() 파이 일부 분리 시키기 explode 속성을 사용하면 특정 파이를 분리 시킬 수 있다. explode = [0.1, 0, 0, 0, 0, 0]# 파이 분리 시키기 plt.pie(size, labels = labels, explode = explode)# 파이 차트 그리기 전체코드 import matplotl..

Python 2024.04.20

[Python] 파이썬 Tkinter 화면 탐색기 생성, 다이얼로그

예제 import tkinter 를 해주고 askopenfilename 함수를 사용한다. from tkinter import * from tkinter.filedialog import askopenfilename readFile = askopenfilename() #readfile 변수에 경로 저장 결과 활용 예제 askopenfilename 함수로 data.csv 파일을 열고 내용을 출력하는 예제다. from tkinter import * from tkinter.filedialog import askopenfilename readFile = askopenfilename() # 파일 경로 readFile 변수에 저장하기 if(readFile != None): #파일이 존재하면 file = open(rea..

Python 2024.04.19