pass data from Matlab to python3 as bytes or bytearray
조회 수: 20 (최근 30일)
이전 댓글 표시
Matlab has a really nice API for interacting with python. I see how to pass lists, and dicts, etc. But I can't figure out how to create a "bytes" or "bytearray" (python3) data variable in Matlab and pass that variable to a python method that expects a "bytes-like" type. I see that bytes in python passed to Matlab result in an array of uint8s, but the reverse does not appear to be true:
>> py.libscrc.usb16(uint8(8))
Python Error: TypeError: a bytes-like object is required, not 'int'
>> py.libscrc.usb16([uint8(8), uint8(9)])
Python Error: TypeError: argument 1 must be read-only bytes-like object, not array.array
Any hints?
Thanks.
댓글 수: 1
Mohammad Sami
2020년 1월 29일
편집: Mohammad Sami
2020년 1월 29일
When passing data to python, Matlab is converting your data into type py.int.
Conversion are shown here https://www.mathworks.com/help/releases/R2019b/matlab/matlab_external/passing-data-to-python.html
Perhaps you can explicitly define the type py.bytes or py.bytearray in Matlab ?
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Call Python from MATLAB에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!