[H]ow should I describe my level of knowledge in my case. Is "familiarity" or "working knowledge" an accurate description? Thanks!
As with all skills in CVs, the best way is to focus on achievements rather than skills. For example, talk about the projects you worked on in Python and C++, approximate SLOC or project duration, team size, the data you processed and libraries you used. Any subjective scale, e.g. "good" or "working knowledge", is ultimately meaningless. Meanwhile, developing software is more than just knowing a language. It is about managing requirements, fixing bugs and ultimately delivering a useful product.
If you are applying for a technical position, you also may want to include a "keyword dump" section at the end of your CV. Many recruiters search for specific libraries or tools using simple keyword searches. For example, recruiters may not understand that an experienced C++ developer may know STL backwards but omit it from the CV or a senior C# developer may be a LINQ guru but think it is not worth mentioning.
Lastly, only include technical details of areas you want to move into. For example, if you hate a particular python library, do not include it in your CV. If you want to move into web development, hypothetically, do not be afraid to mention the few GitHub repositories you have containing small libraries or neat websites that you have worked on in your spare time.