AUTO TRADE/etc contents
-
실제로 여러 프로그래밍 프로그램(python, C++ 등)들을 사용하다보면 오류가 발생하는 것을 어렵지 않게 확인할 수 있다. 사실 파이썬에 대한 얕은 지식을 바탕으로 한 아주 작고 개인적인 견해를 내놓자면 프로그래밍은 사실 오류를 찾아내고 오류가 없도록 버그를 정리하는 일이 모두라고 봐도 무방하다고 본다. 그렇기 때문에 어떤 오류가 발생했을 경우에 그것을 보다 편리하고 직관적으로 확인할 수 있도록 하는 작업이 필요하다. 하지만 파이썬을 시작한지 얼마 지나지 않은 입문 개발자의 경우에는 아래와 같은 코드를 자주 사용할 것이다. print("여기에요?") ##### 코드 ##### print("아님 여기에요?") ##### 코드 ##### 이와 같은 코드를 작성해놓고, '여기에요?'가 잘 출력되었다면 그 ..
파이썬 로그(log)와 포매터 사용하기실제로 여러 프로그래밍 프로그램(python, C++ 등)들을 사용하다보면 오류가 발생하는 것을 어렵지 않게 확인할 수 있다. 사실 파이썬에 대한 얕은 지식을 바탕으로 한 아주 작고 개인적인 견해를 내놓자면 프로그래밍은 사실 오류를 찾아내고 오류가 없도록 버그를 정리하는 일이 모두라고 봐도 무방하다고 본다. 그렇기 때문에 어떤 오류가 발생했을 경우에 그것을 보다 편리하고 직관적으로 확인할 수 있도록 하는 작업이 필요하다. 하지만 파이썬을 시작한지 얼마 지나지 않은 입문 개발자의 경우에는 아래와 같은 코드를 자주 사용할 것이다. print("여기에요?") ##### 코드 ##### print("아님 여기에요?") ##### 코드 ##### 이와 같은 코드를 작성해놓고, '여기에요?'가 잘 출력되었다면 그 ..
2022.12.24 -
파이썬에서는 오류를 처리하는 데에 있어 try:와 except: 두 가지를 가장 주로 사용한다. try:와 except:의 사용 방법 주로 try: 하단에는 실행할 코드를 작성하고 except: 하단에는 오류 발생 시에 실행할 코드를 작성한다. 아래의 예시를 살펴보자. a = [0] print(a[1]) a라는 변수는 리스트(list) 형태의 자료형이고, 0이라는 값 하나만 입력돼있다. 따라서 a라는 변수 내에 입력돼 있는 데이터에 접근하기 위한 방법은 a[0]과 a[-1] 두 가지 밖에 없는데, Line 3 에서와 같이 print(a[1])을 사용하게 되면 아래의 Line 5 와 같이 IndexError 가 발생하게 된다. >>> print(a[1]) Traceback (most recent call ..
파이썬, try:와 except:의 동작 구조파이썬에서는 오류를 처리하는 데에 있어 try:와 except: 두 가지를 가장 주로 사용한다. try:와 except:의 사용 방법 주로 try: 하단에는 실행할 코드를 작성하고 except: 하단에는 오류 발생 시에 실행할 코드를 작성한다. 아래의 예시를 살펴보자. a = [0] print(a[1]) a라는 변수는 리스트(list) 형태의 자료형이고, 0이라는 값 하나만 입력돼있다. 따라서 a라는 변수 내에 입력돼 있는 데이터에 접근하기 위한 방법은 a[0]과 a[-1] 두 가지 밖에 없는데, Line 3 에서와 같이 print(a[1])을 사용하게 되면 아래의 Line 5 와 같이 IndexError 가 발생하게 된다. >>> print(a[1]) Traceback (most recent call ..
2022.07.31 -
[ERROR CODE] sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (1193, "Unknown system variable 'transaction_isolation'") 노트북을 새롭게 구매한 후에 세팅하던 중 계속 오류가 발생해서 검색해보니, MySQL 8.0 내 변수로 tx_isolation만 존재하는 오류가 발생했다. 원칙 상, MySQL 5.7.20 버전 이후의 버전부터는 tx_isolation을 사용하지 않고 transaction_isolation을 사용하기 때문에, MySQL 8.0을 사용한다면 tx_isolation은 없고 transaction_isolation만 존재해야 한다. MySQL 설치 시에 함꼐 설치되는 MyS..
mysql 8.0 내에서 tx_isolation만 있는 경우[ERROR CODE] sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (1193, "Unknown system variable 'transaction_isolation'") 노트북을 새롭게 구매한 후에 세팅하던 중 계속 오류가 발생해서 검색해보니, MySQL 8.0 내 변수로 tx_isolation만 존재하는 오류가 발생했다. 원칙 상, MySQL 5.7.20 버전 이후의 버전부터는 tx_isolation을 사용하지 않고 transaction_isolation을 사용하기 때문에, MySQL 8.0을 사용한다면 tx_isolation은 없고 transaction_isolation만 존재해야 한다. MySQL 설치 시에 함꼐 설치되는 MyS..
2022.05.02 -
여러 컴퓨터에서 코딩을 한다거나, 아니면 제작한 코드를 배포한다거나 할 경우 코드에서 사용한 파이썬 라이브러리를 그대로 설치해주어야 그 코드를 사용할 수 있다. freeze는 많이 떠돌아다니는 정보니 그렇다 치고, 일단 컴퓨터별로 특정 라이브러리가 설치된 경로가 다르다보니 그대로 사용할 경우에 경로를 찾을 수 없다는 오류들이 발견되곤 한다. ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: 실제로 설치가 멈추는 부분들을 살펴보면, 그 내용이 아래와 같이 작성되어 있다. 특징이라면, 중간에 골뱅이가 있다는 것. mysqlclient @ file:///C:/Users/nhk49/mysqlclient..
파이썬 라이브러리 한 번에 옮기기 #[Errno2]여러 컴퓨터에서 코딩을 한다거나, 아니면 제작한 코드를 배포한다거나 할 경우 코드에서 사용한 파이썬 라이브러리를 그대로 설치해주어야 그 코드를 사용할 수 있다. freeze는 많이 떠돌아다니는 정보니 그렇다 치고, 일단 컴퓨터별로 특정 라이브러리가 설치된 경로가 다르다보니 그대로 사용할 경우에 경로를 찾을 수 없다는 오류들이 발견되곤 한다. ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: 실제로 설치가 멈추는 부분들을 살펴보면, 그 내용이 아래와 같이 작성되어 있다. 특징이라면, 중간에 골뱅이가 있다는 것. mysqlclient @ file:///C:/Users/nhk49/mysqlclient..
2022.04.25 -
증권사 Open API는 일반적으로 32bit에서 정상적으로 작동하기 때문에 62bit를 사용하고 있다면 오류가 발생할 수 있다. 그렇기 때문에 Open API를 실행하기 전에 앞서 bit를 확인해주는 코드를 입력할 수 있다. import sys is_64bits = sys.maxsize > 2**32 if is_64bits: print("64비트입니다.") else: print("32비트입니다.") 만약 32비트가 아닌 64비트를 사용하고 있다면 32비트를 사용해주어야 하는데, 32비트로 변경하는 방법은 사용하고 이쓰는 프로그램이 어떤 것인가에 따라 다를 수밖에 없다. 가령, 아나콘다를 사용한다면 아나콘다를 통해 가상환경을 생성하는 방법을 검색해서 가상환경을 설정한 후 파이참 인터프리터를 32비트 파이..
파이썬 bit 확인하기증권사 Open API는 일반적으로 32bit에서 정상적으로 작동하기 때문에 62bit를 사용하고 있다면 오류가 발생할 수 있다. 그렇기 때문에 Open API를 실행하기 전에 앞서 bit를 확인해주는 코드를 입력할 수 있다. import sys is_64bits = sys.maxsize > 2**32 if is_64bits: print("64비트입니다.") else: print("32비트입니다.") 만약 32비트가 아닌 64비트를 사용하고 있다면 32비트를 사용해주어야 하는데, 32비트로 변경하는 방법은 사용하고 이쓰는 프로그램이 어떤 것인가에 따라 다를 수밖에 없다. 가령, 아나콘다를 사용한다면 아나콘다를 통해 가상환경을 생성하는 방법을 검색해서 가상환경을 설정한 후 파이참 인터프리터를 32비트 파이..
2022.02.12 -
파이썬 내에서 for문을 통해 변수 생성하기어떤 변수를 생성하는 과정에 있어 반복적인 작업을 통해 변수를 생성하는 방법은 `globals()`를 통해 설정할 수 있다. 이 globals()의 형식은 `globals()['변수명'.format(변수 이름마다 부여할 값)] = 변수에 입력할 값`의 형태로 사용한다. 백문이불여일견아주 간단한 코드를 짜보면 아래와 같이 제작할 수 있다. for문을 통해 i를 0부터 9까지 반복하도록 설정한 후, `globals` 뒤에 있는 s{}에 형식(`format`)을 i로 설정한 후 그 변수에 i를 입력하는 것이다. 이 결과물은 >>> 하단과 동일하다. 곧, `format()`의 안에 들어가는 값은 곧 변수로 설정되고 등식(=) 뒤에 있는 값은 변수에 입력할 값이 되는..
for 문으로 변수 여러 개 생성하고 사용하기 / globals()파이썬 내에서 for문을 통해 변수 생성하기어떤 변수를 생성하는 과정에 있어 반복적인 작업을 통해 변수를 생성하는 방법은 `globals()`를 통해 설정할 수 있다. 이 globals()의 형식은 `globals()['변수명'.format(변수 이름마다 부여할 값)] = 변수에 입력할 값`의 형태로 사용한다. 백문이불여일견아주 간단한 코드를 짜보면 아래와 같이 제작할 수 있다. for문을 통해 i를 0부터 9까지 반복하도록 설정한 후, `globals` 뒤에 있는 s{}에 형식(`format`)을 i로 설정한 후 그 변수에 i를 입력하는 것이다. 이 결과물은 >>> 하단과 동일하다. 곧, `format()`의 안에 들어가는 값은 곧 변수로 설정되고 등식(=) 뒤에 있는 값은 변수에 입력할 값이 되는..
2021.12.11 -
PyInstaller 설치하기 윈도우 상에서 제공되는 명령 프롬프트(cmd)에서 입력해도 되긴 하지만, 파이참이나 비쥬얼 스튜디오 코드 등의 프로그램을 이용하는 경우에는 해당 프로그램 내에서 제공하는 콘솔(console)에서 모든 작업을 진행하면 훨씬 쉽다. ※ 여기서의 모든 내용은 프로그램 내 콘솔을 사용한다는 가정 하에 진행 명령어 : pip install pyinstaller exe 파일 생성하기 명령어 : pyinstaller 파일이름.py exe 파일 실행해보기 파이참 및 비쥬얼스튜디오 코드 등과 같은 프로그램 상에서 지정된 경로와 동일한 경로 안에 'dict'라는 폴더가 생성되고, 그 안에 실행 파일의 이름으로 폴더가 있으며 그 안에 파일이름.exe 파일이 생성되어 있다. 그 파일을 실행하면 ..
파이썬 exe 파일 생성하기PyInstaller 설치하기 윈도우 상에서 제공되는 명령 프롬프트(cmd)에서 입력해도 되긴 하지만, 파이참이나 비쥬얼 스튜디오 코드 등의 프로그램을 이용하는 경우에는 해당 프로그램 내에서 제공하는 콘솔(console)에서 모든 작업을 진행하면 훨씬 쉽다. ※ 여기서의 모든 내용은 프로그램 내 콘솔을 사용한다는 가정 하에 진행 명령어 : pip install pyinstaller exe 파일 생성하기 명령어 : pyinstaller 파일이름.py exe 파일 실행해보기 파이참 및 비쥬얼스튜디오 코드 등과 같은 프로그램 상에서 지정된 경로와 동일한 경로 안에 'dict'라는 폴더가 생성되고, 그 안에 실행 파일의 이름으로 폴더가 있으며 그 안에 파일이름.exe 파일이 생성되어 있다. 그 파일을 실행하면 ..
2021.12.04 -
파이썬을 통해 자동화 프로그램을 실행하고 싶은 경우에는 배치파일을 생성함으로써 이를 작업 스케쥴러에 등록함으로써 실행할 수 있다. 이번 포스팅에서는 배치파일의 생성과 작업 스케쥴러에 해당 작업을 추가하는 방법에 대해 살펴보도록 할 예정이다. 파이썬 파일 생성하기당연한 이야기겠지만, 특정 작업 스케쥴러에 등록된 배치파일이 실행시킬 파이썬 파일을 만들어주어야 한다. 따라서 본인은 festfile이라는 폴더를 생성시킨 후, 해당 폴더 안에 printhw라는 파일명을 가진 파이썬 파일을 생성해주었다. printhw 파일의 코드는 아래와 같다.time 모듈을 임포트한 후에 time 모듈 안에 있는 `ctime()` 함수를 통해 현재 시간을 불러왔고, 이를 split(' ')을 통해 빈칸을 기준으로 문자열로 나누어..
파이썬 배치파일 생성 및 작업 스케줄러 등록파이썬을 통해 자동화 프로그램을 실행하고 싶은 경우에는 배치파일을 생성함으로써 이를 작업 스케쥴러에 등록함으로써 실행할 수 있다. 이번 포스팅에서는 배치파일의 생성과 작업 스케쥴러에 해당 작업을 추가하는 방법에 대해 살펴보도록 할 예정이다. 파이썬 파일 생성하기당연한 이야기겠지만, 특정 작업 스케쥴러에 등록된 배치파일이 실행시킬 파이썬 파일을 만들어주어야 한다. 따라서 본인은 festfile이라는 폴더를 생성시킨 후, 해당 폴더 안에 printhw라는 파일명을 가진 파이썬 파일을 생성해주었다. printhw 파일의 코드는 아래와 같다.time 모듈을 임포트한 후에 time 모듈 안에 있는 `ctime()` 함수를 통해 현재 시간을 불러왔고, 이를 split(' ')을 통해 빈칸을 기준으로 문자열로 나누어..
2021.09.04 -
가끔 데이터프레임 내에서 특정 값이 존재하는 행의 인덱스 번호를 얻어와야 할 때가 있다. 왜냐하면 데이터프레임의 특정 값에 접근하기 위해서는 인덱스 번호가 무엇보다도 가장 기본적으로 사용되는 방법이기도 하며, 무엇보다도 가장 간단한 접근 방법이기 때문이다. 예를 들어, 아래와 같은 데이터프레임이 있다고 가정해보자.codeopenhighlowclosepre_closevix00010010001300 00030013001350 우리가 이 때 종목코드가 000100인 데이터가 데이터프레임의 몇 번째 행에 입력되어 있는지를 알아야 000100 종목코드가 입력되어 있는 행의 다른 데이터(시가, 고가, 저가 등)에도 접근할 수 있다. 특정 칼럼의 특정 값이 위치한 인덱스 번호 얻어오기이해를 돕기 위해, 위..
데이터프레임 인덱스 값 얻어오기가끔 데이터프레임 내에서 특정 값이 존재하는 행의 인덱스 번호를 얻어와야 할 때가 있다. 왜냐하면 데이터프레임의 특정 값에 접근하기 위해서는 인덱스 번호가 무엇보다도 가장 기본적으로 사용되는 방법이기도 하며, 무엇보다도 가장 간단한 접근 방법이기 때문이다. 예를 들어, 아래와 같은 데이터프레임이 있다고 가정해보자.codeopenhighlowclosepre_closevix00010010001300 00030013001350 우리가 이 때 종목코드가 000100인 데이터가 데이터프레임의 몇 번째 행에 입력되어 있는지를 알아야 000100 종목코드가 입력되어 있는 행의 다른 데이터(시가, 고가, 저가 등)에도 접근할 수 있다. 특정 칼럼의 특정 값이 위치한 인덱스 번호 얻어오기이해를 돕기 위해, 위..
2021.07.22 -
지난 게시글에서는 데이터프레임을 제작하는 방법에 대해 알아보았으니, 이번 게시글에서는 데이터프레임 안에 입력되어 있는 데이터에 접근하는 방법을 살펴보도록 하자. 데이터에 접근하는 방법으로는 크게 iloc과 loc이 있다. 지난 시간에 제작했던 데이터프레임 자료는 아래와 같다. 인덱스 번호 칼럼 1(열 1) 칼럼 2(열 2) 칼럼 3(열 3) 칼럼 4(열 4) 행 1 a b c d 행 2 g h i j 행 3 m n o p 행 4 s t u v 데이터에 접근하는 방법 중 iloc은 주로 인덱스 번호를 통해 데이터에 접근하고, loc은 칼럼명을 통해 데이터에 접근한다고 설명하는 게시글들이 많아서 본인도 처음에는 수많은 차이점이 있을 줄 알았는데, 막상 여러 번 사용해보니 딱히 그렇지도 않았다. 데이터 접근 ..
데이터프레임 사용하기 - iloc, loc지난 게시글에서는 데이터프레임을 제작하는 방법에 대해 알아보았으니, 이번 게시글에서는 데이터프레임 안에 입력되어 있는 데이터에 접근하는 방법을 살펴보도록 하자. 데이터에 접근하는 방법으로는 크게 iloc과 loc이 있다. 지난 시간에 제작했던 데이터프레임 자료는 아래와 같다. 인덱스 번호 칼럼 1(열 1) 칼럼 2(열 2) 칼럼 3(열 3) 칼럼 4(열 4) 행 1 a b c d 행 2 g h i j 행 3 m n o p 행 4 s t u v 데이터에 접근하는 방법 중 iloc은 주로 인덱스 번호를 통해 데이터에 접근하고, loc은 칼럼명을 통해 데이터에 접근한다고 설명하는 게시글들이 많아서 본인도 처음에는 수많은 차이점이 있을 줄 알았는데, 막상 여러 번 사용해보니 딱히 그렇지도 않았다. 데이터 접근 ..
2021.07.20 -
데이터프레임은 크게 칼럼(열)과 인덱스(행)으로 구분되어 있으며, 각 위치에 접근하는 방법으로 iloc과 loc을 가장 흔히 사용한다. 아래와 같은 데이터프레임이 있다고 가정해보도록 하자. 아래와 같은 데이터프레임을 제작하는 방법으로는 가장 크게 두 가지 방법이 있다. 첫 번째 방법은 딕셔너리를 통해 데이터프레임을 제작하는 것이고, 두 번째 방법은 하나의 행을 제작한 후에 기존에 있는 데이터프레임에 합치는 것이다. index 칼럼 1(열 1) 칼럼 2(열 2) 칼럼 3(열 3) 칼럼 4(열 4) 칼럼 5(열 5) 칼럼 6(열 6) 1(행 1) a b c d e f 2(행 2) g h i j k l 3(행 3) m n o p q r 4(행 4) s t u v w x 데이터프레임 제작하기 - (1) 딕셔너리..
데이터프레임 만들기데이터프레임은 크게 칼럼(열)과 인덱스(행)으로 구분되어 있으며, 각 위치에 접근하는 방법으로 iloc과 loc을 가장 흔히 사용한다. 아래와 같은 데이터프레임이 있다고 가정해보도록 하자. 아래와 같은 데이터프레임을 제작하는 방법으로는 가장 크게 두 가지 방법이 있다. 첫 번째 방법은 딕셔너리를 통해 데이터프레임을 제작하는 것이고, 두 번째 방법은 하나의 행을 제작한 후에 기존에 있는 데이터프레임에 합치는 것이다. index 칼럼 1(열 1) 칼럼 2(열 2) 칼럼 3(열 3) 칼럼 4(열 4) 칼럼 5(열 5) 칼럼 6(열 6) 1(행 1) a b c d e f 2(행 2) g h i j k l 3(행 3) m n o p q r 4(행 4) s t u v w x 데이터프레임 제작하기 - (1) 딕셔너리..
2021.07.19 -
편집 단축키 기능 단축키 설명 칸 띄우기 tab 열을 오른쪽으로 이동할 수 있으며, 코드를 드래그해서 누를 경우 코드 전체가 동작 칸 줄이기 Shift + tab 열을 왼쪽으로 이동할 수 있으며, 드래그해서 누를 경우 코드 전체가 동작 에워싸기 Ctrl + Alt + T 특정 코드 아래 부분을 if문, try문 등으로 묶을 수 있도록 함 주석 처리 Ctrl + / 드래그된 부분 전체를 주석(#) 처리 함 선택 라인 복제 Ctrl + D 커서가 있는 라인 전체를 그대로 복사·붙여넣기함 선택 라인 삭제 Ctrl + Y 커서가 있는 라인 전체를 삭제함 라인을 위로 Alt + Shift + ↑ 커서가 있는 라인을 한 줄 위로 이동 라인을 아래로 Alt + Shift + ↓ 커서가 있는 라인을 한 줄 아래로 이동..
PyCharm 단축키편집 단축키 기능 단축키 설명 칸 띄우기 tab 열을 오른쪽으로 이동할 수 있으며, 코드를 드래그해서 누를 경우 코드 전체가 동작 칸 줄이기 Shift + tab 열을 왼쪽으로 이동할 수 있으며, 드래그해서 누를 경우 코드 전체가 동작 에워싸기 Ctrl + Alt + T 특정 코드 아래 부분을 if문, try문 등으로 묶을 수 있도록 함 주석 처리 Ctrl + / 드래그된 부분 전체를 주석(#) 처리 함 선택 라인 복제 Ctrl + D 커서가 있는 라인 전체를 그대로 복사·붙여넣기함 선택 라인 삭제 Ctrl + Y 커서가 있는 라인 전체를 삭제함 라인을 위로 Alt + Shift + ↑ 커서가 있는 라인을 한 줄 위로 이동 라인을 아래로 Alt + Shift + ↓ 커서가 있는 라인을 한 줄 아래로 이동..
2021.06.17