but she says I am not putting enough effort
I think the first thing to do, as with many of these social interactions, is reflect on your personal trust and comradery with the person you are trying to reach. This is likely the first step to being able to properly communicate whatever you decide in an effective fashion and just as importantly consider how honest this feedback is.
As boss is from non technical background she is not aware of difficulty.
Managers often have unrealistic expectations, but after two years of experience you should by now be able to discern that. However its also just as important to consider that should your manager have been involved with many projects she may have gained insight into what is feasible.
But the difficulty here lies with the fact that code though written in Python seems to have complex logic and it contains many lines of code and connects to different set of files.
It is possible your boss has too high expectations of you, but you must realize how big some projects that exist out there really are. This feeling of being overwhelmed by the scope of an existing project often happens the first few times you encounter one, and that is completely normal. I believe this is already mitigated by the following sentence.
But boss says you can take your own time to understand.
If your boss is acting in good faith, and not pressuring you to deliver, just take your own time to really dig into the code. Legacy left by other developers can sometimes be hard to work on. Even if there is no documentation, as you indicated you have time both to understand the code and come up with a general documentation and understanding of your own. In my experience this is best achieved by taking concrete steps, such as identifying and defining the "parts" and sketching them out in diagrams.
So am I not putting enough effort from my part as she says or is that I am getting a difficult one without anyone helping it?
You don't speak of this in your entire post, but what is the actual workload and expectations to come after this initial research phase? You may take the time to understand the code, as you appear to not be heavily pressured, but that is irrelevant if the expected workload is unrealistic afterwards. Should that be true, then there is a very concrete reason for you to escalate and ask for help, without it having anything to do with yourself.
This is my personal opinion, if you're not being pressured, you may take longer but you will likely grasp it eventually, don't despair. Even if you don't, the meticulous documentation you created along the way will more than display to your superior the need for more experienced individuals in the project and the actual effort you put in understanding it.