Starting TDD halfway a project, good practice?
TDD "done right" is always good practice - no matter at which point in time you start using it.
But in order to avoid getting to a situation where one part of the code base is nicely unit-tested and others are not: look for ways to not only cover new features. In other words: if time allows don't only test those parts of a file/class that a new feature will go into - but instead try to get that whole unit into "tests". 
The core aspect of unit tests is that they allow you to make changes to your code base without breaking things. Unit tests enable you to go with higher speed. Thus look for ways to ensure that you can go with "high speed" for the majority of your code base.
I am halfway in the development of a large Flask web application.
Back in the beginning I chose not to use test-driven-development, for learning curve vs project deadline reasons.
Thus these last weeks I had the opportunity to learn more about it, and I am quite exited about starting to use it.
However, regarding I didn't wrap my project with TDD from the start, is there any cons of starting to use it now ?
I would not refactor my entire app, only the new features I am going to design in the near future.