在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
来自Andrew Delong的博客 http://andrewdelong.wordpress.com/2012/11/03/pythonc-in-visual-studio-an-alternative-to-matlabmex/ I spent much of my PhD working in Matlab with C++ MEX extensions. Debugging MEX extensions is frustrating: either you resort to print statements, or you wait for the IDE to launch a new Matlab every time you make a change. With Microsoft’s release of Python Tools for Visual Studio, I decided to switch to Python with C++ extensions.
Getting a Matlab-like setup for Win64 takes a few steps. For Linux, one has the option of simply installing Free 64-bit EPD Python, a Python distribution that bundles several packages for scientific computing (plotting, matrices, Intel MKL). 64-bit EPD does not seem to be free for Windows users. So, the rest of this post is a guide to set things up from scratch. 1. Install Python
2. Install Numpy-MKL and SciPy
3. Install Matplotlib
4. Install Visual StudioIf you are a student or staff at a university, you can get a free license for Visual Studio Ultimate Edition (2010 or 2012) by getting a Microsoft DreamSpark account through your department. However, these steps should work just fine with the free Express Edition of Visual Studio as well. (Note that Python/C++ speed profiling is only available in Ultimate Edition). 5. Install Python Tools for Visual StudioDownload Python Tools for Visual Studio and install. Be sure to get the version for the IDE you want to use (i.e. 2010 or 2012). To see the new Python console, go to View->Other Windows and select it. You can dock the new tool window with the rest. Also enable the Python Debug Interactive window in Debug->Windows. NotesAs of PTVS 2.0 Beta, mixed C++/Python debugging is available in VS 2012 or later. By default, breakpoints will only work in either Python or C++ during any one debugging session — if you debug using a Python “startup project”, breakpoints in your C++ code will be ignored for that debug session; if you debug a C++ “startup project”, your Python breakpoints will be ignored. If you want mixed debugging, you must explicitly enable it in your Python project’s Debug settings (VS2012 only). Tip #1: Python code will run slower when debugging; I find Ctrl+F5 (run without debugging) immensely useful when I’m not planning to hit any breakpoints. Tip #2: By default Visual Studio will break when Python exceptions are thrown. This is a problem because many Python modules use exceptions as a means of ‘normal’ control flow (bad!), so you’ll want to tell the debugger to let most exceptions slide. Go to Tools->Options->Debugging and select “Enable Just My Code”. Then go to Debug->Exceptions and uncheck the “Thrown” column for Python If a package imports “without debugging” but breaks when you run it “with debugging” then you may even have to disable breaking on a User-unhandled exception. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论