How do I know when I'm good enough at coding to solve issues/ commit code related changes on open source projects?
I program in C and python, and even good first issue problems seem like I have to be Dennis Ritchie himself to solve them. How do I know when I'm ready to solve and commit to projects?
In the sense I think you're asking, never: contributing a fix or an improvement is never a one-and-done, fire it off and forget it edit. Each contribution is a request to open a dialog. Implicit in each pull request are multiple questions, perhaps including "is this a good idea", and "do you like this attempt to do it".
If the project maintainer who reviews your PR doesn't like it, they can expend the effort to try to explain why, and teach you. So try to make their job easier, by opening with a clear explanation of why you're doing it, and if what you did involved design decisions, why you chose as you did.