Although the Mindstorms line is discontinued, nowadays there's the Lego SPIKE Prime (it's marketed more towards classrooms). Like the Mindstorms EV3, you can program it with either a visual block language or MicroPython.
IMO https://pybricks.com/project/saving-lego-mindstorms/ is especially interesting.