반응형
반응형

https://www.geeksforgeeks.org/stack-in-python/

 

Stack in Python - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

A stack is a linear data structure that stores items in a Last-In/First-Out (LIFO) or First-In/Last-Out (FILO) manner. In stack, a new element is added at one end and an element is removed from that end only. The insert and delete operations are often called push and pop.

The functions associated with stack are:

  • empty() – Returns whether the stack is empty – Time Complexity: O(1)
  • size() – Returns the size of the stack – Time Complexity: O(1)
  • top() / peek() – Returns a reference to the topmost element of the stack – Time Complexity: O(1)
  • push(a) – Inserts the element ‘a’ at the top of the stack – Time Complexity: O(1)
  • pop() – Deletes the topmost element of the stack – Time Complexity: O(1)

Implementation:

There are various ways from which a stack can be implemented in Python. This article covers the implementation of a stack using data structures and modules from the Python library. 
Stack in Python can be implemented using the following ways: 

  • list
  • Collections.deque
  • queue.LifoQueue

 

# Python program to
# demonstrate stack implementation
# using list
 
stack = []
 
# append() function to push
# element in the stack
stack.append('a')
stack.append('b')
stack.append('c')
 
print('Initial stack')
print(stack)
 
# pop() function to pop
# element from stack in
# LIFO order
print('\nElements popped from stack:')
print(stack.pop())
print(stack.pop())
print(stack.pop())
 
print('\nStack after elements are popped:')
print(stack)
 
# uncommenting print(stack.pop())
# will cause an IndexError
# as the stack is now empty
반응형

'프로그래밍 > Python' 카테고리의 다른 글

[Python] Turtle 🐢  (0) 2023.11.09
[python] Top 10 Python Libraries  (0) 2023.10.26
[python] Create a Video Chat/Video Steaming App using Python  (0) 2023.10.20
[python] PyAudio  (0) 2023.10.20
[Python] savefig 0.0.4  (0) 2023.10.17
반응형

지난 9월 5일, 개인정보보호위원회(이하 ‘개인정보위’)는 보도자료를 통해 국무회의에서 「개인정보 보호법」 시행령 개정안이 의결됨에 따라 지난 3월 14일 공포된 개인정보 보호법과 후속 개정 시행령이 9월 15일부터 시행 예정임을 밝히면서 그 주요 내용을 공개하였습니다.

개인정보위는 이번 개인정보 보호법과 후속 시행령 개정으로 국민의 개인정보를 처리하는 과정에서 준수해야 할 사항에 많은 변화가 예상되므로 기업 및 공공기관 등의 개인정보처리자에게 개정사항에 대한 꼼꼼한 확인을 당부하기도 하였는데요.

 

이번 포스팅에서는 개인정보 보호법의 개정 경과를 살펴보고, 개인정보 보호법의 개정 주요 내용에 대해 알아보도록 하겠습니다.

개인정보 보호법 개정 경과

 

네이버의 개인정보보호 공식 블로그는 개인정보 및 프라이버시와 관련해서 이용자 여러분과 소통하는 채널인 만큼, 개인정보의 근간이 되는 개인정보 보호법 개정에 관한 소식을 중요한 주제로 다루어 포스팅을 통해서 몇 차례 관련 소식을 전해드리기도 했는데요.

> 관련 블로그 포스팅 바로가기

: 개인정보 보호법 2차 개정안 국회 본회의 통과 소식

: 개인정보 보호법 시행령 개정안 입법예고 소식

 

오는 9월 15일부터 개정 개인정보 보호법 시행에 따라, 과징금 상한액 기준 변경 및 코로나·긴급구조 등 공공의 안전을 위한 개인정보의 처리, 개인정보 유효기간제의 폐지 등 3년 만에 전면 개정이 이루어질 예정입니다.

 

NAVER 개인정보보호 블로그 : 네이버 블로그

이용자 여러분과 함께 개인정보·프라이버시 주제로 이야기를 나누는 NAVER 개인정보보호 공식블로그입니다.

blog.naver.com

 

 

https://blog.naver.com/n_privacy/223204766020

반응형
반응형

창의성을 부르는 메모 활용법

반응형
반응형

 

[javascript]  마우스 우클릭 금지

 

1. <head></head> 사이에 script 코드를 삽입.
<script type="text/javascript">
document.oncontextmenu = function(){return false;}
</script>
 

2. <body> 아래에 html 코드를 삽입.
<body oncontextmenu="return false" onselectstart="return false" ondragstart="return false" onkeydown="return false">
 

3. 명칭
oncontextmenu = "return false" : 우클릭 방지
onseletstart = "return false" : 마우스 드래그 방지
ondragstart =  "return false" : 이미지 복사 드래그 방지
onkeydown = "return false" : 키보드 단축키 복사 방지

반응형
반응형

Create a Video Chat/Video Steaming App using Python

https://medium.com/geekculture/creating-video-chat-app-using-python-9da0a9c386ba

 

Create a Video Chat/Video Steaming App using Python

Due to the pandemic the only way to stay connected through the internet. But due to such a huge activity in Advertisement department, data…

medium.com

Server.py

from pyfiglet import Figlet
os.system("clear")
pyf = Figlet(font='puffy')
a = pyf.renderText("Video Chat App without Multi-Threading")
b = pyf.renderText("Server")
os.system("tput setaf 3")
print(a)
import socket, cv2, pickle,struct
# Socket Create
server_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host_name  = socket.gethostname()
host_ip = socket.gethostbyname(host_name)
print('HOST IP:',host_ip)
port = 9999
socket_address = (host_ip,port)
# Socket Bind
server_socket.bind(socket_address)
# Socket Listen
server_socket.listen(1)
print("Listening at:",socket_address)
# Socket Accept
while True:
 client_socket,addr = server_socket.accept()
 print('Connected to:',addr)
 if client_socket:
  vid = cv2.VideoCapture(0)
  
  while(vid.isOpened()):
   ret,image = vid.read()
   img_serialize = pickle.dumps(image)
   message = struct.pack("Q",len(img_serialize))+img_serialize
   client_socket.sendall(message)
   
   cv2.imshow('Video from Server',image)
   key = cv2.waitKey(10) 
   if key ==13:
    client_socket.close()

Client.py

from pyfiglet import Figlet
os.system("clear")
pyf = Figlet(font='puffy')
a = pyf.renderText("Video Chat App without Multi-Threading")
b = pyf.renderText("Client")
os.system("tput setaf 3")
print(a)
import socket,cv2, pickle,struct
# create socket
client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#  server ip address here
host_ip = '<IP>' 
port = 9999
client_socket.connect((host_ip,port)) 
data = b""
metadata_size = struct.calcsize("Q")
while True:
 while len(data) < metadata_size:
  packet = client_socket.recv(4*1024) 
  if not packet: break
  data += packet
 packed_msg_size = data[:metadata_size]
 data = data[metadata_size:]
 msg_size = struct.unpack("Q",packed_msg_size)[0]
 
 while len(data) < msg_size:
  data += client_socket.recv(4*1024)
  frame_data = data[:msg_size]
  data  = data[msg_size:]
  frame = pickle.loads(frame_data)
  cv2.imshow("Receiving Video ",frame)
  key = cv2.waitKey(10) 
  if key  == 13:
   break
client_socket.close()
반응형

'프로그래밍 > Python' 카테고리의 다른 글

[python] Top 10 Python Libraries  (0) 2023.10.26
[python] Stack in Python  (0) 2023.10.24
[python] PyAudio  (0) 2023.10.20
[Python] savefig 0.0.4  (0) 2023.10.17
[python] pdf to png, 해상도 높게 저장하기  (0) 2023.10.04
반응형

PyAudio

https://pypi.org/project/PyAudio/

 

PyAudio

Cross-platform audio I/O with PortAudio

pypi.org

PyAudio는 크로스 플랫폼 오디오 I/O 라이브러리인 PortAudio v19에 대한 Python 바인딩을 제공합니다. PyAudio를 사용하면 Python을 사용하여 GNU/Linux, Microsoft Windows 및 Apple macOS와 같은 다양한 플랫폼에서 오디오를 쉽게 재생하고 녹음할 수 있습니다.

 

pip install PyAudio

반응형

+ Recent posts