본문 바로가기
반응형

전체 글387

파이썬의 키워드들 (변수 이름으로 사용불가) 파이썬의 키워드들 (변수 이름으로 사용불가) 키워드는 파이썬을 만들 때 미리 사용된 단어들입니다. 사용자가 변수이름으로 사용할 수 없습니다. 파이썬의 키워드들은 아래와 같습니다. 알파벳 순입니다. >>> import keyword>>> print(keyword.kwlist)['False', 'None', 'True', '__peg_parser__', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not.. 2020. 11. 21.
파이썬 셸이 뭔가요 파이썬 셸이 뭔가요 파이썬을 설치하면 시작메뉴에 네개의 파일이 생깁니니다. 두번째 줄에 Python 3.9 가 파이썬 셸입니다. 인터렉티브 셸 또는 대화형셸 이라고 부릅니다. 인터렉티브는 컴퓨터와 소통한다는 의미이고, 대화형도 같은 의미입니다. 셸은 영어로 shell 인데 껍데기라는 뜻입니다. 껍데기는 무언가를 감싸고 있는데요. 파이썬 셸은 그 안에 파이썬 코드를 실행하는 인터프리터를 갖고(감싸고) 있기 때문에 셸이라고 부른 것 같습니다. 파이썬셸은 파이썬 코드를 실행해주는 인터프리터입니다. 참고로 >>> 와 같이 코드를 입력하는 곳을 프롬프트라고 합니다. IDLE 는 대화형셸에 에디터 기능이 추가된 것입니다. 2020. 11. 21.
파이썬 설치하는 방법 파이썬 설치하는 방법 1. 파이썬 공식홈페이지 접속 https://www.python.org/ 2. download 클릭, 다운로드된 파일 실행 3. Add Python XX to PATH 체크하고 Install Now 클릭 Add Python XX to PATH는 프로그램 실행경로에 파이썬을 추가하는 것입니다. 체크해야 이후 명령 프롬프트에서 파이썬을 실행할 수 있씁니다. 4. 설치가 완료되면 close 버튼 클릭 5. 시작메뉴에서 설치된 파이썬 확인 2020. 11. 21.
텍스트에디터와 파이썬 인터프리터 텍스트에디터와 파이썬 인터프리터 텍스트에디터 : 프로그래밍 언어로 이루어진 코드를 작성할 수 있는 메모장, 노트패드 등 파이썬 인터프리터 : 파이썬 코드를 실행해줌 2020. 11. 21.
파이썬 시간/날짜 모듈 구조 분석 (time 모듈) 파이썬 시간/날짜 모듈 구조 분석 (time 모듈) 파이썬에서 시간/날짜 관련 클래스와 함수를 제공하는 time 모듈의 구조를 분석해봅시다. 모듈을 import 하고 dir 함수를 적용합니다. >>> import time>>> dir(time) ['_STRUCT_TM_ITEMS', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'altzone', 'asctime', 'clock', 'ctime', 'daylight', 'get_clock_info', 'gmtime', 'localtime', 'mktime', 'monotonic', 'monotonic_ns', 'perf_counter', 'perf_counter_ns', 'process_.. 2020. 11. 20.
파이썬에서 특정 모듈이 제공하는 함수 목록 출력 (dir함수) 파이썬에서 특정 모듈이 제공하는 함수 목록 출력 (dir함수) 파이썬에서 어떤 모듈이 제공하는 클래스와 함수의 목록을 출력할 때는 dir함수가 사용됩니다. 아래는 예시입니다. matplotlib 에 적용하였습니다. import matplotlib >>> dir(matplotlib)['LooseVersion', 'MatplotlibDeprecationWarning', 'MutableMapping', 'Parameter', 'Path', 'RcParams', 'URL_REGEX', '_DATA_DOC_APPENDIX', '_DATA_DOC_TITLE', '_ExecInfo', '__bibtex__', '__builtins__', '__cached__', '__doc__', '__file__', '__load.. 2020. 11. 20.
파이썬 패키지의 구조를 확인하는 방법 (dir) 파이썬 패키지의 구조를 확인하는 방법 (dir) 파이썬을 사용하다 보면 이런 의문이 들 때가 자주 있습니다. 이 패키지에 무슨 기능이 있는지 어떻게 알지? 라는 의문입니다. 구글에 검색해서 documentation 을 보는 방법이 있긴 하지만 파이썬 자체에서 기능들을 알아보고 싶었습니다. 이때 사용하는 함수가 dir 입니다. 예를들어 numpy 가 가진 기능들을 알아보고 싶다고 합시다. 아래와 같은 명령어를 입력하면 됩니다. >>> import numpy as np>>> dir(np) 아마 스크롤이 내려가다 윗부분이 잘릴 것입니다. 너무 많은 기능을 담고 있어서 그렇습니다. 길이를 구해보면 622입니다. >>> len(dir(np))622 인덱싱으로 일부만 출력해봅시다. >>> dir(np)[0:10] .. 2020. 11. 20.
파이썬 날짜/시간데이터 포멧팅하기 (time 모듈) 파이썬 날짜/시간데이터 포멧팅하기 (%Y-%m-%d) 파이썬의 time 패키지에서 기준으로 하는 시간데이터는 유닉스 시간입니다. 아래와 같이 출력합니다. >>> time.time()1605839984.3338 이 값은 어떤 시점을 기준으로한 '초' 데이터입니다. 따라서 이 데이터를 우리가 흔히 사용하는 연월일시분초 데이터로 바꿔야하는데, 이때 두 종류의 함수가 사용됩니다. gtime() : GMP시간으로 변환localtime() : 현지 시간으로 변환 localtime 함수를 적용해봅시다. >>> time.localtime(time.time())time.struct_time(tm_year=2020, tm_mon=11, tm_mday=20, tm_hour=11, tm_min=40, tm_sec=59, tm.. 2020. 11. 20.
파이썬 한국 현재 날짜/시간 출력 (time 모듈) 파이썬 한국 현재 날짜/시간 출력 (time 모듈) 먼저 유닉스 시간을 얻어옵니다. time 패키지의 time 함수를 사용합니다. >>> utime=time.time()1605839280.8548002 로컬시간을 출력할 때는 time 패키지의 localtime 함수를 사용합니다. 이때 함수 값으로 유닉스 시간을 넣어주면 됩니다. >>> time.localtime(time.time())time.struct_time(tm_year=2020, tm_mon=11, tm_mday=20, tm_hour=11, tm_min=28, tm_sec=58, tm_wday=4, tm_yday=325, tm_isdst=0) 사실 함수값은 생략이 가능합니다. 유닉스시간으로 알아서 입력된다는 것입니다. >>> time.localt.. 2020. 11. 20.
파이썬 유닉스 시간을 연월일분초시 시간으로 바꾸기 (time 모듈) 파이썬 유닉스 시간을 연월일분초시 시간으로 바꾸기 파이썬 time 패키지의 time 함수를 이용하면 현재 시간을 유닉스 시간으로 출력해줍니다. (유닉스 시간 설명 : https://pybasall.tistory.com/145) >>> import time>>> time.time()1605762128.7188 이런 유닉스 시간을 연월일분초시 시간으로 바꿔봅시다. time 패키지의 gmtime 함수를 사용합니다. gmt 시간대로 바꿔줍니다. 본인이 있는 현지시간으로 바꾸기 원하는 경우 localtime 함수를 이용하면 됩니다. 유닉스 시간을 함수에 넣어주면 됩니다. >>> time.gmtime(time.time())time.struct_time(tm_year=2020, tm_mon=11, tm_mday=20.. 2020. 11. 20.
파이썬 패키지,라이브러리,모듈,클래스,메소드,함수,객체 용어 정리 파이썬 패키지,라이브러리,모듈,클래스,메소드,함수,객체 용어 정리 파이썬을 공부하다 보면 아래와 같은 용어들이 등장한다. 라이브러리패키지모듈클래스메소드함수객체 완벽히 구분되지는 않고, 의미가 중첩되어 있는 부분들이 있어서 헷갈릴 수 있다. 각각의 설명은 아래와 같다. 라이브러리 : 패키지와 같은 의미로도 쓰이고, 패키지를 모아놓은 것이라는 의미로도 쓰임패키지 : 모듈과 같은 의미로도 쓰이고, 모듈을 모아놓은 것이라는 의미로도 쓰임모듈 : 함수,변수,클래스를 모아놓은 것클래스 : 속성과 함수를 포함하는 구조 (ex.리스트)메소드 : 클래스 안에 정의된 함수함수 : 입력값을 받고 지정한 연산을 수행하여 결과값을 출력객체 : 속성과 메소드를 가진 모든 것 아래와 같은 포함관계를 갖는다. 라이브러리 ≥ 패키지 .. 2020. 11. 19.
파이썬 epoch time, POSIX, timestamp가 뭔가요? 파이썬 epoch time, POSIX, timestamp가 뭔가요? epoch time 은 시간을 나타내는 하나의 방식입니다. 유닉스시간(Unix time) 또는 POSIX 시간이라고 부릅니다. 또는 timestamp 라고 불리기도 합니다. 이하 유닉스시간이라고 부르겠습니다. epoch time = 유닉스시간(unix time) = POSIX = timestamp 유닉스시간은 협정세계시(UTC)를 기준으로 시간을 계산합니다. 협정세계시를 기준으로 몇초가 경과되었는지를 나타냅니다. 협정세계시는 1970년 1월1일0시를 기준으로 하는데, 유닉스시간은 이와같은 기준시간으로부터의 경과'초' 입니다. 파이썬에서 유닉스시간을 출력해봅시다. time 패키지를 사용합니다. >>> import time>>> time... 2020. 11. 19.
[파이썬 기초] print 함수를 이용한 출력 (%f, %d, %s 이게 다 뭔가요?) [파이썬 기초] print 함수를 이용한 출력 (%f, %d, %s 이게 다 뭔가요?) %f, %d, %s 등은 파이썬에서 문자열을 포맷팅(formatting)하는 방식입니다. formatting은 자료의 형식(문자,정수,실수 등)을 이용하여 출력하는 방식이라고 생각하시면 되는데, 예제를 통해 감을 잡으셔야 합니다. % 방식은 C언어에서 사용하던 방식입니다. 대표적인 %출력타입은 아래와 같습니다. $s 문자열 출력%d 정수출력%f 실수 출력 %s (문자열인 경우 사용) >>> s1="hi hello">>> print("I said %s" %s1)I said hi hello %d (10진수 정수) >>> i1=132>>> print("i have %d" %i1)i have 132 실수인 경우에도 정수로 출.. 2020. 11. 19.
[파이썬 기초] print 함수를 이용한 출력 (end 옵션) [파이썬 기초] print 함수를 이용한 출력 (end 옵션) print 함수의 옵션 중 end 옵션을 알아봅시다. end 옵션은 출력된 문자열 끝에 무엇이 올지를 결정합니다. 기본값은 \n 입니다. 이스케이프 문자이고, 줄바꿈을 의미합니다. 아래 예시로 쉽게 이해되실겁니다. >>> a=123>>> print(a,'hi',3,end="!!")123 hi 3!! 2020. 11. 19.
[파이썬 기초] print 함수를 이용한 출력 (sep 옵션) [파이썬 기초] print 함수를 이용한 출력 (sep 옵션) print 함수의 옵션 중 sep 옵션을 알아봅시다. 콤마를 이용하여 여러 값을 입력 시, 각 값들 사이를 무엇으로 연결할지를 결정합니다. 기본값은 ' ' space 한칸 입니다. 아래 예시로 쉽게 이해되실겁니다. >>> a=123>>> print(a,'hi',3,sep='---')123---hi---3 2020. 11. 19.
[파이썬 기초] print 함수를 이용한 출력 [파이썬 기초] print 함수를 이용한 출력 print 함수는 메시지를 출력하는 함수입니다. 문자열이나 숫자를 입력해도 되고, 변수를 입력해도 됩니다. >>> print("hello world")hello world >>> a=123>>> print(a)123 콤마를 이용하여 입력할 수도 있습니다. >>> a=123>>> print(a,'hi',3)123 hi 3 2020. 11. 19.
[파이썬 numpy] 배열의 누적곱 (axis 방향별) [파이썬 numpy] 배열의 누적곱 (axis 방향별) 배열의 누적곱를 구할때는 cumprod 메소드를 사용합니다. 먼저 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5]) 배열의 누적곱 배열의 누적곱은 아래와 같이 두 가지 방법으로 구할 수 있습니다. 넘파이 함수를 사용해도 되고, 정의한 배열에 메소드를 적용해도 됩니다. >>> np.cumprod(A)array([ 1, 2, 6, 24, 120], dtype=int32) >>> A.cumprod()array([ 1, 2, 6, 24, 120], dtype=int32) 배열의 axis 에 따른 누적곱 2차원 배열을 하나 정의합시다. >>> A=np.arange(1,7).reshape(2,3).. 2020. 11. 13.
[파이썬 numpy] 배열의 누적합 (axis 방향별) [파이썬 numpy] 배열의 누적합 (axis 방향별) 배열의 누적합을 구할때는 cumsum 메소드를 사용합니다. 먼저 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5]) 배열의 누적합 배열의 누적합은 아래와 같이 두 가지 방법으로 구할 수 있습니다. 넘파이 함수를 사용해도 되고, 정의한 배열에 메소드를 적용해도 됩니다. >>> np.cumsum(A)array([ 1, 3, 6, 10, 15], dtype=int32) >>> A.cumsum()array([ 1, 3, 6, 10, 15], dtype=int32) 배열의 axis 에 따른 누적합 2차원 배열을 하나 정의합시다. >>> A=np.arange(6).reshape(2,3)>>> Aar.. 2020. 11. 13.
[파이썬 numpy] 배열의 표준편차 (axis 방향별) [파이썬 numpy] 배열의 표준편차 (axis 방향별) 배열의 표준편차를 구할때는 std 메소드를 사용합니다. 디폴트값은 루트n으로 나누는 표준편차입니다. 모집단의 표준편차를 구할 때 사용하고, 불편추정량인 표본표준편차을 구할 때는 ddof=1 이라는 옵션을 입력하면 됩니다. 먼저 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5]) 배열의 표준편차 배열의 표준편차는 아래와 같이 두 가지 방법으로 구할 수 있습니다. 넘파이 함수를 사용해도 되고, 정의한 배열에 메소드를 적용해도 됩니다. >>> np.std(A)1.4142135623730951 >>> A.std()1.4142135623730951 배열의 axis 에 따른 표준편차 2차원 배열을.. 2020. 11. 13.
[파이썬 numpy] 배열의 분산 (axis 방향별) [파이썬 numpy] 배열의 분산 (axis 방향별) 배열의 분산을 구할때는 var 메소드를 사용합니다. 디폴트값은 n으로 나누는 분산입니다. 모집단의 분산을 구할 때 사용하고, 불편추정량인 표본분산을 구할 때는 ddof=1 이라는 옵션을 입력하면 됩니다. 먼저 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5]) 배열의 분산 배열의 분산은 아래와 같이 두 가지 방법으로 구할 수 있습니다. 넘파이 함수를 사용해도 되고, 정의한 배열에 메소드를 적용해도 됩니다. >>> np.var(A)2.9166666666666665 >>> A.var()2.9166666666666665 배열의 axis 에 따른 분산 2차원 배열을 하나 정의합시다. >>> A=n.. 2020. 11. 13.
[파이썬 numpy] 배열의 합 (axis 방향별) [파이썬 numpy] 배열의 합 (axis 방향별) 배열의 합을 구할때는 sum 메소드를 사용합니다. 먼저 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5]) 배열의 합 배열의 합은 아래와 같이 두 가지 방법으로 구할 수 있습니다. 넘파이 함수를 사용해도 되고, 정의한 배열에 메소드를 적용해도 됩니다. >>> np.sum(A)15 >>> A.sum()15 배열의 axis 에 따른 합 2차원 배열을 하나 정의합시다. >>> A=np.arange(6).reshape(2,3)>>> Aarray([[0, 1, 2], [3, 4, 5]]) axis=0 방향의 합을 구해봅시다. 행방향 합입니다. >>> A.sum(axis=0)array([3, 5, 7].. 2020. 11. 13.
[파이썬 numpy] 배열의 평균 (axis 방향별) [파이썬 numpy] 배열의 평균 (axis 방향별) 배열의 평균을 구할때는 mean 메소드를 사용합니다. 먼저 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5]) 배열의 평균 평균은 아래와 같이 두 가지 방법으로 구할 수 있습니다. 넘파이 함수를 사용해도 되고, 정의한 배열에 메소드를 적용해도 됩니다. >>> np.mean(A)3.0 >>> A.mean()3.0 배열의 axis 에 따른 평균 2차원 배열을 하나 정의합시다. >>> A=np.arange(6).reshape(2,3)>>> Aarray([[0, 1, 2], [3, 4, 5]]) axis=0 방향의 평균을 구해봅시다. 행방향 평균입니다. >>> A.mean(axis=0)array(.. 2020. 11. 13.
[파이썬 numpy] 유용한 where 함수 (조건에 맞는 값의 위치, 값 변경) [파이썬 numpy] 유용한 where 함수 (조건에 맞는 값의 위치, 값 변경) where 함수는 두가지 기능을 합니다. - 특정 조건에 맞는 원소의 위치를 반환- 특정 조건에 맞는 원소와 그렇지 않은 원소를 원하는 값으로 변경 특정 조건에 맞는 원소의 위치를 반환 배열을 하나 정의합시다. >>> A=np.array([1,2,3,4,5,6]) 3보다 큰 값의 위치를 구해봅시다. >>> np.where(A>3)(array([3, 4, 5], dtype=int64),) 특정 조건에 맞는 원소와 그렇지 않은 원소를 원하는 값으로 변경 위 배열에서 3보다 큰 원소는 100으로, 그렇지 않은 원소는 0으로 바꿔봅시다. >>> np.where(A>3,100,0)array([ 0, 0, 0, 100, 100, 10.. 2020. 11. 13.
[파이썬 numpy] 배열의 최댓값 최솟값 반환 [파이썬 numpy] 배열의 최댓값 최솟값 반환 max함수와 min 함수를 사용합니다. 넘파이 패키지를 불러옵니다. >>> import numpy as np 배열을 하나 정의합니다. >>> A=np.array([1,2,3,4,5]) 최댓값을 구해봅시다. >>> np.max(A)5 최솟값을 구해봅시다. >>> np.min(A)1 2020. 11. 13.
[파이썬 numpy] 넘파이에서 반올림, 올림, 버림,내림 하는 방법 [파이썬 numpy] 넘파이에서 반올림, 올림, 버림,내림 하는 방법 넘파이 패키지를 불러옵니다. >>> import numpy as np 반올림 np.round(수, 자리수) >>> np.round(345.345,1)345.3 >>> np.round(345.345,2)345.34 >>> np.round(345.346,2)345.35 넘파이는 사사오입이 아니라 오사오입 방법을 사용하는 것으로 보입니다. 올림 올림은 입력값보다 같거나 큰 정수중 가장 가까운 값을 반환합니다. ceil 함수를 사용합니다. >>> np.ceil(3)3.0 >>> np.ceil(3.4)4.0 >>> np.ceil(3.6)4.0 >>> np.ceil(-3.4)-3.0 >>> np.ceil(-3.6)-3.0 버림 버림은 소수점을 그.. 2020. 11. 13.
[파이썬 numpy] 절댓값 구하는 함수 [파이썬 numpy] 절댓값 구하는 함수 넘파이에서 절댓값을 수할 때는 abs 메소드를 사용합니다. 숫자의 절댓값 >>> import numpy as np>>> np.abs(-222)222 배열의 절댓값 >>> A=np.array([1,2,-3,-5])>>> np.abs(A)array([1, 2, 3, 5]) 2020. 11. 12.
[파이썬 numpy] 배열에서 정수와 소수부분 분리 [파이썬 numpy] 배열에서 정수와 소수부분 분리 modf 함수를 사용하면 배열의 정수와 소수부분을 분리할 수 있습니다. 정수부분과 소수부분을 각각 튜플의 원소로 반환합니다. 변수 두개를 입력할 경우 각 변수에 저장할 수도 있습니다. 배열의 정수와 소수부분을 튜플로 반환 배열을 하나 정의합시다. >>> import numpy as np>>> A=np.array([1.3,2.5,-1.3,-2.5]) modf 메소드를 사용해봅시다. >>>np.modf(A)(array([ 0.3, 0.5, -0.3, -0.5]), array([ 1., 2., -1., -2.])) 정수부분과 소수부분이 각각 튜플의 원소로 반환됩니다. 정수부분과 소수부분을 변수에 저장 아래와 같이 변수 두개를 선언해줍니다. >>> A1,A2=.. 2020. 11. 12.
[파이썬 numpy] 배열의 축(axis) 이해하기 [파이썬 numpy] 배열의 축(axis) 이해하기 배열에는 축이라는 헷갈리는 개념이 있습니다. 특히 concatenate 메소드를 사용하여 배열을 이어붙일때 그렇습니다. 배열의 축이 헷갈리는 이유는 행렬개념에 익숙해져 있기 때문입니다. 차원이 높아지며 우리가 생각하는 행과 열의 순서가 파괴되는 듯한 느낌을 받는데, 이 문제만 해결하면 축은 아주 쉬워집니다. 차원을 높여가며 이해해봅시다. 1차원 배열 먼저 1차원 배열을 하나 정의해봅시다. >>> A1=np.array([1,2,3,4,5])>>> A1array([1, 2, 3, 4, 5]) 이때 축은 axis0 하나뿐입니다. 이때는 행과 열의 개념이 없습니다. 여기까지는 어렵지 않습니다. 2차원 배열 이번에는 2차원 배열을 정의해봅시다. >>> A2=np.. 2020. 11. 12.
[파이썬 numpy] 두 배열의 원소를 비교하여 최대값 반환 (maximum 함수) [파이썬 numpy] 두 배열의 원소를 비교하여 최대값 반환 (maximum 함수) 넘파이의 maximum 함수는 두 배열의 원소를 비교하여 최대값을 갖는 배열을 반환합니다. 먼저 두 배열을 정의합시다. >>> import numpy as np>>> A=np.array([1,2,3,4,5])>>> B=np.array([5,4,3,2,1]) maximum 함수를 적용해봅시다. >>> np.maximum(A,B)array([5, 4, 3, 4, 5]) 두 배열의 크기가 다를 경우 오류가 발생합니다. 2020. 11. 12.
[파이썬 numpy] 배열의 지수함수 (exponential) [파이썬 numpy] 배열의 지수함수 (exponential) 파이썬 넘파이에서 제공하는 지수함수들입니다. 아래와 같이 세가지가 있습니다. 배열에 적용하여 사용합니다. exp( ) : exponential 값을 구해줌exp2( ) : 배열값으로 2를 거듭제곱해줌expm1( ) : exp(배열값) - 1 배열을 하나 정의하고 각 함수를 적용해봅시다. >>> import numpy as np>>> A=np.array([1,2,3])>>> Aarray([1, 2, 3]) exp >>> np.exp(A)array([ 2.71828183, 7.3890561 , 20.08553692]) exp2 >>> np.exp2(A)array([2., 4., 8.]) expm1 >>> np.expm1(A)array([ 1.71.. 2020. 11. 12.
반응형