I can’t speak to how well the Robot Mesh Python code will work in a realtime environment or what the experience with that system is like, so my advice will be quite general. (And you probably shouldn’t listen to me too much since I’m not really experienced with that software.)
Looking at the list of concepts you’ve covered and the sample Robot Mesh code, your students probably need some basic understanding of OOP to use Python with Robot Mesh. Python is heavily object-oriented, and all library methods are generally wrapped in objects that you have to instantiate, etc. While they probably wouldn’t need to define their own objects, they’d certainly need to know how to use objects from a library, what a method/instance variable is, etc.
What do you mean by “web Python,” too? Looking at the Treehouse site, it appears they’re teaching students to use
input()
for gathering input, which is exactly what you’d use in the shell.
From big-picture standpoint analyzing languages instead of specifically Robot Mesh:
Intuitively, I’d think that this might be somewhat limiting as they get more serious in their code, as Python is notoriously slow and we’re on tiny systems. But, if they’re doing some kind of compilation step in the backend to run this in a non-interpreted form, that could compensate; I’ll leave speed comparisons to someone who’s actually used both C and Python for robots.
C still is pretty much the “standard” in embedded systems programming, and it will put your students in good standing for anything EE/CpE if they know C. Further, C is not object oriented, and so that’s one less item you’d need to cover in learning… and learning new programming languages deepens your understanding of programming in general.
Python is starting to become a more popular introductory language at the college level, but during my time TAing students who started with C-like languages and those who started in Python, the abstractions of Python postponed some of the difficulty in learning more fundamental structures until they met assembly code and pointers head-on. This may or may not be relevant in your case, however (e.g. if you’re dealing with high school seniors who want to major in engineering, teaching them C will be giving them a huge advantage even if it’s hard, while people in middle school/early high school probably still have time to transition later and might benefit from a longer “ramp-up”).
That said, as a now professional software developer and sometime data scientist, Python is my go-to for quick scripts, high-level data processing, etc., while C/C++ are still my languages of choice for high-performing, low-level code.