지속가능티끌/Python ( 45 ) Python. json.loads 의 문자열 변환 특성 . jsoncpp 와 호환 안됨 json 형식의 문자열 str_json 을 파이썬의 json.loads(str_json)로 변환 한것을 다시 문자열로 변환 str(json.loads(str_json)) 하면 원래의 문자열에서의 형식과는 다르게 출력되는 것들이 있다. 현재확인된것은 2개 . 큰 따옴표는 작은따옴표로 출력됨. "data" -> 'data' 부울 값 표현의 첫글자 대문자로 표현됨. false, true -> False, True 상기 파이썬 형식의 문자열을 c++의 Jsoncpp 에서 수신받아 Json::CharReader* json_reader->parse(파이썬에서 수신받은 문자열) 로 파싱할려고 하면 오류 발생한다. jsoncpp 에서는 모두 큰 따옴표, 부울 표현형식은 모두 소문자여야 정상 파싱가능하므로 해당 문자열 .. 2021. 1. 7. Visual Studio 파이썬 개발환경에서 라이브러리 패키지 설치 방법 Visual Studio 파이선 개발환경 내에서 PYPI 로 배포되는 모든 패키지들을 쉽게 설치 가능. Visual Studio. Python 환경 창에서 패키지 설치 Visual Studio 로 파이썬 프로젝트를 오픈했을때 왼쪽의 Python Environment (파이썬 환경) 창에서 적용할 파이썬 버전도 선택할 수 있고, 선택된 특정 파이썬 버전에서 PYPI 패키지 검색도 가능하고 즉시 설치도 가능하다. 아래 설명은 패키지 matplotlib 설치과정에 대한 설명. Python 환경 창에서 패키지 탭을 선택하면 현재 설치된 패키지 목록이 표시된다. 아래 그림에서 pip, setuptools 은 이미 설치되어있는것을 보여준다. 검색창에 설할 패키지 이름을 입력하면 자동으로 보이는 Run command.. 2020. 9. 11. Python 설치. 2.7 , 3.8 개요 파이썬 버전 2.7.x 설치과정 정리. Python 2.7 설치 상세 - 설치대상 : win7/win10 64bit - 파이썬 버전 : 2.7.15 ( 2018년 5월 1일 배포. 현재 2018년 9월 11일 2.7 에서는 가장 최신버전) 설치파일 다운로드 주소 : https://www.python.org/downloads/ 상기 주소 접속하여 Python 2.7.15 의 윈도우 64비트 버전을 선택하여 다운로드 받고 실행하여 설치 진행. 설치시 주의사항. - 특별한것 없음. - 아래 동영상에서 다운로드부터 설치, 정상설치여부 확인 과정까지 상세보임. Python 3.8 설치. 2020. 09. 11- 이전 버전 2.7 은 더 이상 사용할 일도 없어져서 제거하고 현재 최신버전인 3.8.6rc1 64.. 2020. 9. 11. Python. 딕셔너리. 딕셔너리 생성하기. - 딕셔너리 변수 생성할 때부터 키와 값을 정의하면서 만들수도 있고, 빈 딕셔너리 만들어도 됨. # 딕셔너리 생성하면서 키, 값 지정. my_dict = {'a': 1, 'b': 2, 'c': 3} # 빈 딕셔너리 생성. # 아래 2가지 모두 동일한 결과. my_dict = {} my_dict = dict() #dict() 로 값대입하면서 딕셔너리 생성하기. #아래 2개모두 동일 결과. my_dict = dict(a=1, b=2, c=3) my_dict = dict({'a': 1, 'b': 2, 'c': 3}) get() . 키에 해당하는 값 받기. my_dict['a'] 처럼 키의 값을 받는 방법도 가능하고 get 함수 이용하여 받는것도 가능. my_dict = {'a': 1, 'b.. 2020. 7. 5. Python. 파이썬 에서 외부 파일 읽기. 한 줄씩 읽고 개행문자 제거. 파이썬에서 읽어들일 파일예 - 윈도우에서 메모장으로 새 텍스트 만들기로 utf-8 encoding 으로 저장한 파일명 : apikey_url.txt - 파일에 기록되어있는 내용. 한 줄단위로 마지막 부분에 엔터 쳐서 줄바꿈되어있음. wss://stream-testnet.bybit.com/realtime wss://stream-testnet.bybit.com/realtime_public wss://stream-testnet.bybit.com/realtime_private https://api-testnet.bybit.com 파일 오픈하고 한 줄 단위로 읽기. - 정확하게는 파일에 있는 모든 엔터단위로 읽기 - 파일에 기록된 내용없이 엔터만 있는 것도 모두 개별 라인으로 읽기 처리됨. #### 파일오픈하고,.. 2020. 4. 6. Python. 파이썬 실행파일 만들기. Pyinstaller 이용 개요 - Pyinstaller 이용하여 파이썬으로 작성된 코드를 개발환경이 아닌 일반 PC 에서 실행시키기 위한 실행파일 만드는 방법. 사전준비 . Pyinstaller 설치. - Pyinstaller 설치 구문 ; pip install pyinstaller 실행하면 자동으로 설치완료됨. 설치소요시간 2분 이내. .py 파일 실행파일로 만들기. 실행파일로 만들 파이썬 파일 있는 경로에서 커맨드 창에 아래구문 실행하면 파이썬 파일명과 동일한 이름의 .exe 파일이 폴더 dist 속에 새로 만들어진다. 옵션 --onefile (-F 옵션과 동일) 은 실행에 필요한 dll 등을 모두 exe 파일 1개에 다 포함시키는 옵션. pyinstaller --onefile 파일명.py pyinstaller -F 파일명... 2020. 4. 6. Python. 다른 파이썬 파일의 함수 호출하기 . import, from import, import as 개요 - 파이썬 코딩시 1개의 파일에 모든 소스코드 구현해버리면 전체 코드 구조 가독성 훼손되어 유지보수 피곤해진다. - 분리가능한것들을 적절하게 별도의 파일에 구현하고 메인에서 해당 파일 import 하여 활용. ######## 파일 1. bybit_function.py def my_function1(): print("Hello Bybit"); ################################################################################## ###### 파일 2. main.py import bybit_function # 파일의 확장자 py 없이 임포트. bybit_function.my_function1() # bybit_function.py 의 함수 m.. 2020. 3. 19. Python. requests 모듈. http post get 파이썬 requests 모듈 - http post get 실행가능. - 간단히 기본 get 실행시켜보기. import requests URL = "https://igotit.tistory.com" res = requests.get(URL); print(res.status_code); print(res.text); 실행결과. 403 TISTORY .... (생략) post my_data = {'param1': 'value1','param2': 'value2'} res = requests.post(url, data=my_data); 아이디 비번 전달 url = "https://naver.com" res=request.post(url, auth=("id", "pass")); print("status code .. 2020. 3. 18. Python. asyncio. 비동기 모듈. Python asyncio 모듈. - event loop 에서 실행할 것들을 schedule(등록) 하고 작업들을 실행, 취소, 일시 중지 가능. - 파이썬 3.4 부터 첫배포, 버전에 따라 기능 추가. - 파이썬 3.6 에서의 기능 상태. - - async, await, asynchronous generator, asynchronous comprephension - - 파이썬 3.6 에서의 asynico 상세 : https://docs.python.org/3.6/whatsnew/3.6.html#asyncio What’s New In Python 3.6 — Python 3.6.10 documentation What’s New In Python 3.6 Editors Elvis Pranskevichus , .. 2020. 3. 16. 파이썬. 웹소켓. WbeSocket 구현. 파이썬 WebSocket 코딩 사전 준비. - 모듈 WebSockets 설치하기. - 코드에서 import websockets 하고 실행시켜서 모듈 없다는 메시지 보이면 websockets 모듈 설치하면됨. - 아래 영상에서 websocket 아닌 websockets 로 해야함. Python WebSocket Server - 아래 코드는 클라이언트에서 송신한 데이터를 콘솔에 출력하고 동시에 수신한 데이터를 그대로 클라이언트로 그대로 송신하는 룹백시험. ####################### ## WebSocket Server ####################### import asyncio import websockets # call back for websockets.serve(accept, a.. 2020. 3. 11. Python. 소켓통신 Python 소켓서버 구현 코드예. 소켓통신 실행 시험. - 소켓클라이언트로 하이퍼터미널 이용. 상기 파이썬 소켓서버 와 통신하는 소켓클라이언트로 하이퍼 터미널을 이용해도 된다. 아래 동영상에서는 다른 PC에 하이퍼 터미널을 실행하여 소켓서버 통신 실행예. 화면상의 오른쪽 PC가 파이썬의 소켓서버 실행 왼쪽PC에서 소켓클라이언트 접속. - 소켓클라이언트로 SocketTest 이용한 예. - 클라이언트로 MQL5 소켓클라이언트 이용한 예. 클라이언트로 Visual C++ DLL CyFinDevice 이용한 예. 연관 하이퍼 터미널 MS 하이퍼 터미널 (Hyper Terminal), 다운로드, 기본 사용법. 하이퍼 터미널 실행파일. - 설치과정없이 아래 첨부된 압축파일 풀면 됨. 위 파일 압축풀어 바탕화면에.. 2019. 10. 28. Python. time . sleep . datetime. 밀리초 등 time.sleep(secs)- 인자 : 초단위 시간, 실수, 정수 모두 가능 from time import sleep sleep(3)sleep(0.1)sleep(0.001) time 상세정보. https://docs.python.org/3/library/time.html time — Time access and conversions — Python 3.7.3 documentationtime — Time access and conversions This module provides various time-related functions. For related functionality, see also the datetime and calendar modules. Although this modul.. 2019. 5. 22. Pyhton. print. 실수 자리수 제한등 print("Received Tick. Symbol = ",pyst_DataTick.pstr_symbol,"(",pyst_DataTick.i_symbol,"), ask = %.5f , " % pyst_DataTick.price_ask,"bid = %.5f" % pyst_DataTick.price_bid) # test 출력모습. 첫등록 : 2019년 5월 19일 최종수정 : 본 글 단축주소 : https://igotit.tistory.com/2179 2019. 5. 19. Python. ctypes. structure. 구조체 파이썬에서 구조체 - 아래 코드예처럼 ctypes.Structure 형식으로 class 생성하면서 구조체 멤버는 _filelds_ 부분에서 정의한다. from ctypes import * class ST_DATA(Structure): _fields_ = [("v1", c_int), ("v2", c_double), ("v_arr",c_double * 50 )] stmyData = ST_DATA(1,0.0) #구조체변수 stmyData 정의. print(stmyData.v1, stmyData.v2) _fields_ : 필드이름과 필드형을 포함하는 2튜플의 리스트. 필드형 : c_int와 같은 ctypes 형, 혹은 파생된 ctypes 형(구조체, 공용체, 배열, 포인터) 만 가능. 필드형으로 불가능한 예 :.. 2019. 5. 16. Python. if . 비교연산자, and, or not, in, not in , ### if a > b: # 마지막에 콜론. ... # 들여쓰기 공백 4칸. #### if a > b: ... elif a > c: ... else: ... ############### 비교 연산자들. a d: ... if a d: ... if not a = b 와 같은 의미. ... ############### in , not in arr = [1, 2, 3, 4] if 100 in arr: # 100 이 arr 에 있다면 ... if 100 not in arr: # 100 이 arr 에 없다면 ... 첫등록 : 2019년 5월1.. 2019. 5. 16. Python. enum C 의 enum 에 해당하는 것이 파이썬 3.4 이후부터 Enum 제공된다. from enum import Enum class ENUM_TIMEFRAMES(Enum): PERIOD_M1 = 1 PERIOD_M15 = 15 혹은, # DLL 함수인자로 C enum 있는 경우 아래 처럼 정의해야 전달가능. from enum import IntEnum class ENUM_TIMEFRAMES(IntEnum): PERIOD_M1 = 1 PERIOD_M15 = 15 c의 #define 용도처럼 사용하는 예. class CyMAXNM_ARRVALUE_CySTCM(IntEnum): value = 10 class CyMAXNUM_SYMBOLS(IntEnum): value = 10 ########## 위에서 정의된 상수값.. 2019. 5. 16. Python. ctypes. CFUNCTYPE. WINFUNCTYPE.콜백함수 함수 프로토타입 함수 프로토타입의 인스턴스를 만들어서 외부 함수를 만들 수도 있습니다. 함수 프로토타입은 C의 함수 프로토타입과 비슷합니다; 구현을 정의하지 않고 함수(반환형, 인자형, 호출 규칙)를 설명합니다. 팩토리 함수는 원하는 결과형과 함수의 인자형들로 호출되어야 하며, 데코레이터 팩토리로 사용되어 @wrapper 문법을 통해 함수에 적용될 수 있습니다. 예제는 콜백 함수를 참조하십시오. ctypes.CFUNCTYPE(restype, *argtypes, use_errno=False, use_last_error=False) 반환된 함수 프로토타입은 표준 C 호출 규칙을 사용하는 함수를 만듭니다. 이 함수는 호출 중에 GIL을 해제합니다. use_errno를 참으로 설정하면, 시스템 errno 변수의.. 2019. 5. 16. Python. function, 함수 파이썬에서 함수 정의 규칙 ########### 파이썬 함수 정의 기본 골격 def 함수이름(in1, in2=0): # 함수인자 , 기본값 설정가능, 마지막에 콜론 필수. ... bla bla bla # 함수내부는 탭으로 간격준 부분들. return a# return 값 없다면 생략가능. 1개 이상의 값 return 가능. 파이썬 함수 리턴 - 1개 이상의 값들 리턴가능 def function(): ... bla bla bla return a, b, c# 1개 이상의 값들 반환 가능. ####################### # 상기 함수 호출시 1개 이상 반환값 받는 것 retv1, retv2, retv3 = function() 파이썬 함수 인자 - 인자로 전달되는 object 속성에 따라 자동으로 .. 2019. 5. 16. 이전 1 2 3 다음