I don't use DAP so I can't help you there. I use vim for editing code. When I need to debug I run lldb or gdb in a separate tmux window, if I need to see the code I enable TUI mode. There are many wrappers including TermDebug, Vimspector, termdbg, etc. to add visual breakpoints, but I have never found them necessary - because again gdb/lldb can already show you the code in various formats including assembly. It sounds like you are using Pycharm in exactly the same way you can already use a standalone debugger.
For Python I find a built in debugger especially unnecessary. Most interpreted languages have a debugger that can be triggered from the source code to drop into an interpreter, and Python is no exception - see pdb and breakpoint().