Smop matlab sang python trực tuyến

OMPC cho phép chạy m-file của MATLAB® bằng trình thông dịch Python. OMPC đọc các tệp m và dịch chúng thành mã tương thích với Python


OMPC nhằm mục đích cho phép tái sử dụng cơ sở mã khổng lồ mở và miễn phí của MATLAB® trên nền tảng Python miễn phí và phát triển nhanh hơn. Chạy Python và MATLAB® trong một trình thông dịch duy nhất sẽ tránh được các sự cố khi chạy hai ứng dụng riêng biệt. Python thêm các thư viện lập trình mục đích chung vào cú pháp thuận tiện của ngôn ngữ máy tính kỹ thuật.
Phụ thuộc. Python, OMPC sử dụng PLY và Byteplay, nhưng chúng được phân phối cùng với mã nguồn.
Phụ thuộc Python. ctypes [dành cho phiên bản Python < 2. 5], cho OMPClib. numpy, scipy, matplotlib [pylab] và có thể cả những thứ khác
Các hệ điều hành được hỗ trợ. tất cả các nền tảng hỗ trợ Python, ctypes, numpy, scipy, matplotlib[pylab]
Cấp phép. OMPC và tất cả các ví dụ là một phần của trang web OMPC được cấp phép theo giấy phép kiểu BSD.

Làm thế nào nó hoạt động

OMPC cho phép chạy m-file của MATLAB® bằng trình thông dịch Python. OMPC đọc các tệp m và dịch chúng thành mã tương thích với Python. Giống như trong ví dụ sau

function [s,varargout] = mysize[x]
% kích thước với varargout
nout = max[nargout,1]-1;< . nout, vararout[k] = {s[k]};
s = size[x];
for k=1:nout, varargout[k] = {s[k]}; end

từ nhập ompc *

@mfunction["s", "varargout"]
def mysize[x].
    """kích thước với varargout"""
    nout = max[nargout,1] - 1
    s = size[ . không].
    for k in m_[1:nout]:
        vararout[k]. giá trị = mcell[s[k]]


OMPC không phải là trình thông dịch, nó cho phép Python thực hiện công việc. Điều này có nghĩa là nếu Python nhanh hơn thì OMPC cũng sẽ nhanh hơn. OMPC dịch các tệp m bảo tồn cấu trúc của các chương trình gốc càng nhiều càng tốt. Mặc dù OMPC đi kèm với một thư viện mô phỏng các tính năng của MATLAB's® mảng số không có gì có thể ngăn bạn chạy mã đã dịch theo cách bạn muốn. Điều này có nghĩa là bạn có thể chạy mã do OMPC tạo ra trên IronPython, Jython, PyPy hoặc bất kỳ thứ gì khác nếu bạn viết lớp số của riêng mình


Tất cả điều kỳ diệu được tạo ra bởi những người trang trí trăn và nội quan. Xem phần ví dụ để biết cách có thể mô phỏng các biến ẩn như nargin/nargout và các khía cạnh động khác của công cụ MATLAB® không có sẵn trong Python

Nhà phát triển, người thử nghiệm và yêu cầu tính năng

Nếu bạn muốn hiểu thêm về cách thức hoạt động của OMPC hoặc bạn muốn đóng góp theo bất kỳ cách nào cho sự phát triển, hãy xem các trang tài liệu dành cho nhà phát triển.
Mọi hình thức đều được hoan nghênh đóng góp. Bất kỳ ai cũng có thể đóng góp bằng cách thử nghiệm. Sự phát triển được thúc đẩy bởi thử nghiệm và nhu cầu. Đối với thư viện chức năng hoặc hộp công cụ nếu bạn thích, dự án OMPC không sử dụng bất kỳ công cụ theo dõi lỗi tinh vi và có thể phức tạp nào. Lý do không sử dụng theo dõi lỗi phổ biến là sự phát triển dựa trên sự đóng góp của những người không phải là lập trình viên.

MATLAB® là nhãn hiệu đã đăng ký của The MathWorks, Inc.
"Python" và các logo Python là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Python Software Foundation.

Chọn một trang web để nhận nội dung đã dịch nếu có và xem các sự kiện và ưu đãi tại địa phương. Dựa trên vị trí của bạn, chúng tôi khuyên bạn nên chọn.

Bạn cũng có thể chọn một trang web từ danh sách sau

Làm thế nào để có được hiệu suất trang web tốt nhất

Chọn trang Trung Quốc [bằng tiếng Trung hoặc tiếng Anh] để có hiệu suất trang tốt nhất. Các trang web quốc gia khác của MathWorks không được tối ưu hóa cho các lượt truy cập từ vị trí của bạn

Tôi đã cài đặt SMOP qua pip và có vẻ như nó hoạt động tốt. Tôi có các tệp smop-script.pysmop.exe trong thư mục python thư mục

> smop -V

0.40
0 của tôi

Giả sử tôi có một tệp matlab tên là

> smop -V

0.40
1 nằm ở
> smop -V

0.40
0. Làm cách nào để sử dụng smop để dịch tệp đó?

Tài liệu SMOP chỉ bao gồm một ví dụ về việc mở một tệp có trong thư mục

> smop -V

0.40
1 với một
> smop -V

0.40
2 và tôi không có bất cứ thứ gì giống như vậy. Ngoài ra, trang github không cho biết liệu nó chỉ hoạt động với 2. 7 hoặc 3. hay bất cứ cái gì

Tôi đã hy vọng rằng gói này sẽ tăng tốc Matlab của tôi -> Python 3. 6 chuyển đổi, nhưng nếu hiện tại có dịch giả nào tốt hơn, vui lòng cho tôi biết điều đó/thay vào đó

ghi bàn. 2

Sử dụng smop không khác so với các công cụ dòng lệnh khác. Đầu tiên, có được các nguồn. Tải xuống, sao chép, tar, wget hoặc bất kỳ thứ gì phù hợp với bạn. Hãy gọi thư mục chứa setup. py thư mục gốc. Thay đổi thư mục thành cái đó. Bây giờ hãy cài đặt smop

> pip install .

Hãy xem nếu nó hoạt động

> smop -V

0.40

Vâng, đúng vậy

Hãy xem các tài liệu

> smop | more

Cuối cùng, bản dịch. Nếu bạn có một loạt tệp Matlab m, có tên là foo. m, thanh. tôi, bzz. m và bạn muốn dịch các tệp này sang python bạn gõ

> smop foo.m bar.m bzz.m

ghi bàn. 9

Tôi vừa thử sử dụng để chuyển đổi tệp matlab bằng SMOP và nó đã hoạt động. Tôi đã cài đặt phần mềm bằng pip trong môi trường Anaconda Prompt

pip install smop

Sau khi cài đặt, tôi có 0. 41 Phiên bản

Tôi đã sao chép tệp mà tôi muốn chuyển đổi vào thư mục mà tôi đã chạy mã pip trong môi trường Dấu nhắc Anaconda

Làm cách nào để chuyển đổi mã Matlab sang python trực tuyến?

Để chuyển Matlab sang python, chúng ta có 2 lựa chọn, hoặc làm thủ công hoặc nhờ sự trợ giúp của công cụ nào đó. Để chuyển đổi Matlab sang python, một công cụ có tên SMOP [Trình biên dịch Matlab và Octave sang Python nhỏ] được sử dụng . Công cụ này có khả năng hiểu mã Matlab cơ bản và sau đó phân tích cú pháp thành python.

SMOP trong trăn là gì?

Tóm tắt. SMOP là viết tắt của Trình biên dịch Matlab/Octave to Python nhỏ . Nó được cho là sẽ giúp những người cố gắng di chuyển từ Matlab sang Python. Mặc dù có những điểm tương đồng giữa hai ngôn ngữ, nhưng vẫn có đủ sự khác biệt để khiến việc dịch thuật thủ công trở nên quá tốn thời gian.

SMOP có hoạt động với python 3 không?

SMOP chỉ hoạt động với python2 [và các phiên bản phụ]. Vì vậy KHÔNG CÓ PYTHON3 để cài đặt . sử dụng pip để cài đặt gói này sẽ sử dụng phiên bản python mặc định của bạn hoặc phiên bản python mặc định của môi trường ảo đang được sử dụng.

Tôi có thể chạy mã Matlab trong python không?

Có hai cách để gọi mã MATLAB từ Python. Đầu tiên là sử dụng API Công cụ MATLAB cho Python, yêu cầu cài đặt MATLAB . Thứ hai là sử dụng SDK trình biên dịch MATLAB để biên dịch gói Python không yêu cầu người dùng phải cài đặt MATLAB.

Chủ Đề