'2020'에 해당되는 글 497건

Python HELP

2020/Python 2019. 12. 11. 13:57
반응형

  함수에는 많은 종류가 있고 기능 또한 다양합니다. 함수의 설명을 확인하는 help(함수명)을 기억해 두면 좋습니다. 같은 함수라도 파라미터를 생략하는 등 사용법이 다양하여 모든 기능을 기억하기는 힘들기 때문입니다.

  예를 들어 np.random.randint(5) 를 입력하면 0~4까지의 임의의 정수를 하나 생성합니다.

  또한 np.random/randint(5,10,(3,2)) 을 입력하면 5~9까지의 임의 정수를  값으로 하는 3 * 2행렬이 생성됩니다.

 

반응형

'2020 > Python' 카테고리의 다른 글

JupyterNotebook 파일 저장, 파일 로드  (0) 2019.12.11
Python 함수만들기  (0) 2019.12.11
Python bool 배열  (0) 2019.12.11
Jupyter Notebook slicing  (0) 2019.12.11
Python 행렬  (0) 2019.12.11
블로그 이미지

꽃꽂이하는개발자

,

Python bool 배열

2020/Python 2019. 12. 11. 11:58
반응형

넘파이를 통해 행려 ㄹ데이터에서 특정 조건을 만족하는 것을 추출하여 쉽게 수정할 수 있습니다.

위의 예제로 출력 및 수정을 알아보았습니다.

반응형

'2020 > Python' 카테고리의 다른 글

Python 함수만들기  (0) 2019.12.11
Python HELP  (0) 2019.12.11
Jupyter Notebook slicing  (0) 2019.12.11
Python 행렬  (0) 2019.12.11
Python 벡터(vector)  (0) 2019.12.10
블로그 이미지

꽃꽂이하는개발자

,
반응형

  list와 ndarray에서 요소를 한 번에 나타낼 ?때 슬라이스라는 편리한 방법을 사용할 수 있습니다. 이를 잘 사용하면 프로그래밍이 간편해 집니다. 슬라이스는 ':'을 사용하며 변수명[시작:끝]으로 사용할 수 있습니다. 앞에 시작을 넣지않고 [:끝]만 넣으신다면 처음부터 지정하신 곳까지 출력이 되게 됩니다.

 

 

반응형

'2020 > Python' 카테고리의 다른 글

Python HELP  (0) 2019.12.11
Python bool 배열  (0) 2019.12.11
Python 행렬  (0) 2019.12.11
Python 벡터(vector)  (0) 2019.12.10
Jupyter if문, for문  (0) 2019.12.10
블로그 이미지

꽃꽂이하는개발자

,

Python 행렬

2020/Python 2019. 12. 11. 10:13
반응형

  ndarray의 2차원 배열로 다음과 같이 행렬을 정의 할 수 있습니다.

  행렬(배열)의 크기ndarray변수명.shape 명령으로 알 수 있습니다.

  이 출력은()로 둘러싸여 있으므로 tuple형으로 나타납니다. 다음과 같이 입력하여 w와 h에 각각 2와 3을 저장할 수 있습니다.

 

  요소를 참조하려면? (인덱스는 0부터 시작합니다^^)

  요소의 수정?

  요소가 0과 1인 ndarray 만들기

  모든 요소가 0인 ndarray는 np.zeros(size)로 만들 수 있습니다. np.ones(size)도 동일합니다.

  값이 랜덤인 행렬 생성?

  요소가 랜덤(임의)인 행렬을 생성하는 경우에는 np.random.rand(size)를 사용합니다.

  이 경우 size는 tuple이 아닙니다. 예를들어, 2 * 3의 난수행렬을 생성하려면?

  np.random.randn(size)를 사용하면 평균 0분산 1의 가우스 분포로 난수를 생성할 수 있습니다.

  또한 np.random.randint(low, high, size)를 사용하려면 low에서 high까지 임의의 정수값으로 이루어진 size 크기의 행렬을 생성할 수 있습니다.

  행렬의 크기 변경

  행렬의 크기 변경하는 경우 변수명.reshape(n,m)을 사용합니다. 

  행렬의 사칙연산

  사칙 연산 +, -, *, /는 해당되는 요소 전체에 적용됩니다.

  스칼라 * 행렬

스클라를 행렬에 곱하면 다음과 같이 모든 요소에 적용됩니다.

이 외에도 넘파이에는 여러 함수가 준비되어 있습니다.

제곱근

np.sqrt(x)

로그 np.log(x)
반올림 np.round(x,유효자리수)
평균 np.mean(x)
표준 편차 np.std(x)
최대값 np.max(x)
최소값 np.min(x)

  행렬 곱의 계산

  변수명1.dot(변수명2)

반응형

'2020 > Python' 카테고리의 다른 글

Python bool 배열  (0) 2019.12.11
Jupyter Notebook slicing  (0) 2019.12.11
Python 벡터(vector)  (0) 2019.12.10
Jupyter if문, for문  (0) 2019.12.10
Python tuple  (0) 2019.12.10
블로그 이미지

꽃꽂이하는개발자

,

JSP의 등장

2020/JSP SERVLET 2019. 12. 10. 19:10
반응형

서블릿의 등장

  초기 웹 프로그램은 서블릿을 이용해서 구현했습니다. 그런데 인터넷 사용자가 폭발적으로 증가하고 사용자에게 보여주는 화면의 기능이나 구성이 복잡해집에 따라 사용자를 고려하는 화면 요구 사항도 점점 늘어났죠. 그래서 현재는 프로그래머가 서블릿으로 화면을 구현하지 않고 주로 디자이너가 이 일을 담당하는 추세입니다.

  그래서 서블릿의 기능 중 별도로 화면 기능을 디자이너가 작업하기 쉽게 하기 위해 JSP가 등장했습니다.

  JSP는 디자이너 입장에서 화면의 수월한 기능 구현과 개발 후 화면의 편리한 유지관리를 목적으로 도입되었습니다. 기존 서블릿에서는 자바 코드를 기반으로 문자열을 사용해 HTML과 자바스크립트 화면을 구현했으나 JSP는 이와 반대로 HTML, CSS와 자바스크립트를 기반으로 JSP 요소들을 사용해 화면을 구현합니다.

  정리해 보자면,

 

문제점

  • 웹 프로그램의 화면 기능이 복잡해지므로 서블릿의 자바 기반으로 화면 기능 구현 시 어려움이 발생한다
  • 디자이너 입장에서 화면 구현 시 자바 코드로 인해 작업이 어렵다
  • 서블릿에 비지니스 로직과 화면 기능이 같이 있다보니 개발 후 유지관리가 어렵다

해결책

  • 서블릿의 비지니스 로직과 결과를 보여주는 화면 기능을 분리하자!
  • 비지니스 로직과 화면을 분리함으로써 개발자는 비지니스 로직 구현에 집중하고, 디자이너는 화면 기능 구현에만 집중하자!
  • 개발 후 재사용성과 유지관리가 훨씬 수월해진다!

JSP의 구성요소

  JSP는 HTML과 자바스크립트를 기반으로 JSP에서 제공하는 여러가지 구성 요소들을 사용해 화면을 구현하는 기술입니다. 주로 웹 프로그램의 화면 기능과 모델2 JSP의 구성 요소는 다음과 같습니다.

  • HTML 태그, CSS 그리고 자바스크립트 코드
  • JSP 기본 태그
  • JSP 액션 태그
  • 개발자가 직접 만들거나 프레임워크에서 제공하는 커스텀 태그
  •  
반응형
블로그 이미지

꽃꽂이하는개발자

,

Python 벡터(vector)

2020/Python 2019. 12. 10. 18:25
반응형

  파이썬으로 벡터나 행렬을 나타내려면 넘파이(NumPy)라는 라이브러리를 통해 기능을 확장해야 합니다. 

  파이썬에서는 다양한 라이브러리가 개발되고 있으며, import로 간단히 가져올 수 있씁니다.

  행렬 연산을 위한 라이브러리인 넘파이는 다음과 같이 import 하면 됩니다.

뒤에 as np는 별명 같은 걸로 관습적으로 np로 정의하는 경우가 많습니다.

 

자 이제 벡터(1차원 배열)은 np.array(list 형)으로 정의 하겠습니다.

 

벡터와 벡터의 더하기 였습니다.

  type(x)를 입력하면 x가 numpy.ndarray형인 것을 알 수 있습니다.

 

인덱스의 값을 참조하려면 list형과 마찬가지로 대괄호를 사용하면 됩니다.

x[0]

수정 또한 x[인덱스] = 값을 사용합니다.

x[0] = 100

 

### ndarray 형의 주의점

  ndarray 형을 사용할 때 아주 중요한 사실이 있습니다. ndarray 형의 내용을 복사하려면 일반 변수처럼 c=d를 사용하는 것이 아니라 c= d.copy()를 사용해야 합니다. 단순히 c=d처럼 사용하게 되면 내용이 저장된 곳의 주소가 전달됩니다.

c=d를 입력한 후 c의 내용을 변경하면 그 변경사항이 d에도 반영되어 버립니다.

 

반응형

'2020 > Python' 카테고리의 다른 글

Jupyter Notebook slicing  (0) 2019.12.11
Python 행렬  (0) 2019.12.11
Jupyter if문, for문  (0) 2019.12.10
Python tuple  (0) 2019.12.10
Jupyter Notebook List형  (0) 2019.12.10
블로그 이미지

꽃꽂이하는개발자

,

Jupyter if문, for문

2020/Python 2019. 12. 10. 18:15
반응형

  프로그램을 조건에 따라 나누어 실행시키려면 if문을 사용해야 하죠?

  다음과 같이 첫 행에서 x값으로 15를 대입하고, if의 x>10이라는 조건은 True입니다.

  이제 for문을 사용해 봅시다.

  for문은 for "변수" in "list 형":  과 같은 형태입니다.

  list에 포함된 요소의 수만큼 for문 다음의 들여 쓰기 된 행이 실행됩니다. 반복할 때마다 list의 요소가 차례대로 변수에 드러갑니다. list형 대신 tuple 형, range형을 사용할 수도 있습니다. 또한 list형의 요소값을 각각 2배로도 만들 수 있습니다.

  enumerate를 사용해보기

  파이썬에서는 enumerate을 사용하여 앞에서 구현한 기능보다 조금도 예쁘게 나타낼 수 있습니다.

반응형

'2020 > Python' 카테고리의 다른 글

Python 행렬  (0) 2019.12.11
Python 벡터(vector)  (0) 2019.12.10
Python tuple  (0) 2019.12.10
Jupyter Notebook List형  (0) 2019.12.10
Jupyter Notebook 자료형  (0) 2019.12.10
블로그 이미지

꽃꽂이하는개발자

,

Python tuple

2020/Python 2019. 12. 10. 17:59
반응형

  배열을 나타내는 형태로 list형 이외에 tuble(튜플) 형이라는 배열 변수가 있습니다.

  tuple은 list와는 달리 요소를 수정할 수 없습니다. tuple 형은(1,2,3)과 같이 괄호( )를 사용하여 배열을 나타냅니다.

 

  참조를 할때는 괄호( ) 대신 list형 처럼 대괄호[ ] 를 사용하는 것에 주의하세요. tuple 형은 수정할 수 없기 때문에 a[1]=2 라는 명령을 내리면 오류가 발생합니다. 그렇다면, list와 tuple은 서로 어떤 경우에 구분해서 사용될까요?

  나중에 설명할 '함수'의 출력이 여러개인 경우 리턴할때 tuple로 정리됩니다.

 

  (1,2)는 tuple이지만 (1)은?? 튜플이 아닙니다. ()는 연산의 순서를 나타내는 일반적인 괄호로 간주합니다. 길이가 1인 tuple은(1,)과 같이 쉼표( , ) 를 붙입니다.

 

 

반응형
블로그 이미지

꽃꽂이하는개발자

,