maya里面调试代码一直用的print。遇到复杂点的类就感觉有点束手束脚的,因此整理了一下maya调试的一些方法
1.万能的pdb调试
pdb 有2种用法
1.非侵入式方法 (不用额外修改源代码,在命令行下直接运行就能调试)
常规用法: python3 -m pdb filename.py
原则上可用mayapy替换python3,直接在cmd里面进行断点调试(没测试)
2.侵入式方法 (需要在被调试的代码中添加以下代码然后再正常运行代码)
import pdb
pdb.set_trace()
3.pdb 基本命令
我在maya里面没有设置断点成功,所以直接在需要断点的位置直接pdb.set_trace()了。
命令 | 解释 |
---|---|
break 或 b | 设置断点 |
continue 或 c | 继续执行程序 |
list 或 l | 查看当前行的代码段 |
step 或 s | 进入函数(进入 for 循环用 next 而不是用 step) |
return 或 r | 执行代码直到从当前函数返回 |
next 或 n | 执行下一行 |
up 或 u | 返回到上个调用点(不是上一行) |
p x | 打印变量x的值 |
exit 或 q | 中止调试,退出程序 |
help | 帮助 |
2.pycharm连接断点调试
1.打开pycharm
2.File——settings——Plugins
3.搜索maya,搜到mayacharm。点击Install
4.然后restart,重启pycharm。
5.打开settings——mayacharm,这里面有个接口,把接口复制到maya代码里面,并且在maya代码框中运行一下这个接口(选中接口代码然后按ctlr+enter)
6.设置执行配置
7.attch to process 并且运行
此时已经大功告成了,断点可以运行调试了