본문 바로가기

전체 글105

[01] 넘파이 배열 ■ 넘파이 배열많은 숫자 데이터를 하나의 변수에 넣고 관리할 때 리스트는 속도가 느리고 메모리를 많이 차지하는 단점이 있다. 배열(array)을 사용하면 적은 메모리로 많은 데이터를 빠르게 처리할 수 있다. 배열은 리스트와 비슷하다. 하지만 모든 원소가 자료형이어야 하고, 원소의 갯수를 바꿀 수 없다. ​파이썬은 자체적으로 배열 자료형을 제공하지 않는다. 따라서 배열을 구현한 다른 패키지를 import한다. 가장 대표적인 패키지는 넘파이(NumPy)​​이다.​넘파이는 수치해석용 파이썬 패키지이다. 다차원의 배열 자료구조 "ndarray" 클래스를 지원하며 벡터와 행렬을 사용하는 선형대수 계산에 주로 사용된다.​넘파이는 C로 구현된 CPython에서만 사용할 수 있다. 넘파이의 배열 연산은 C로 구현된 내.. 2024. 6. 25.
[1-0] 파이썬이란 ■ 파이썬이란파이썬(Python)은 1990년 암스테르담의 귀도 반 로섬이 개발한 인터프리터 언어이다.* 인터프리터 언어 : 소스코드를 한 줄씩 해석한 후 그때그때 실행해 결과를 바로 확인할 수 있는 언어■ 파이썬 특징(1) 파이썬은 인간다운 언어프로그래밍이란 인간이 생각하는 것을 컴퓨터에 지시하는 행위를 말한다. 파이썬은 사람이 생각하는 방식을 그대로 표현할 수 있는 언어이다. 따라서 파이썬을 사용하는 프로그래머는 굳이 컴퓨터의 사고 체계에 맞추어 프로그래밍하려고 애쓸 필요가 없다.>>> if 4 in [1,2,3,4]: print("2가 있다")>>> 만약 2가 1,2,3,4 중에 있으면 "2가 있다"를 출력한다. (2) 문법이 쉽다파이썬은 문법이 매우 쉽고 간결하면 사람의 사고 체계와 매우 닮아 있.. 2024. 6. 25.
[네트워크] OSI 모델 7계층_HTTP 프로토콜 ■ HTTP 프로토콜※ 웹을 만들기 위해 사용되는 다양한 기술들웹 서비스를 만들기 위해 다양한 기술들이 사용된다. 웹 표준이라고 불리는 HTML, Javascript, CSS는 프론트 엔드로 실행은 클라이언트 쪽에서 되지만, 서버 쪽에 저장된다. 이러한 데이터을 받아오는(웹 표준 데이터) 프로토콜을 HTTP 프로토콜이다. HTTPS는 HTTP에 보안 요소들을 추가한 프로토콜이다. ASP/ASP.NET, JSP, PHP 등은 벡엔드로 서버 쪽에서 실행되는 코드로 웹 서버 페이지를 만드는 기술들이다.● HTTP 프로토콜의 특징HyperText Transfer Protocol(하이퍼 텍스트 전송 프로토콜)로서, www에서 쓰이는 핵심 프로토콜로 문서의 전송을 위해 쓰인다. 오늘날 거의 모든 웹 애플리케이션에서.. 2024. 6. 25.
[네트워크] NAT와 포트포워딩 ■ NATNAT(Network Address Translation)은 IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술을 말한다.​패킷에 변화가 생기기 때문에 IP나 TCP/UDP의 Checksum도 다시 계산되어 재기록해야 한다.​NAT를 이용하는 이유는 대개 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위함이다. 하지만 꼭 사설 IP를 공인 IP로 변환하는데에만 사용하는 기술은 아니다. 사설 IP 대역들이 통신할 때 공유기에 할당된 공인 IP로 변경되어 통신한다. 하지만 바깥 네트워크에서는 공유기가 통신하는 것처럼 보인다. 하지만 공유기 안의 NAT 테이블에는 통신한 기.. 2024. 6. 25.