I disagree, C++ is a fine language and it's fine as a first language.
We could argue on this again and again. Fortunately, it's irrelevant to the topic
(but for the first language, no it isn't a good one, and I say that from a teacher perspective : I've tried many languages to introduce coding, and C-syntax ones - C / C++ / Java / C# / whatever - are generally ill-suited for several reasons, the main being verbosity).
I dislike Python, and I say this from having spent a year writing it professionally. It has a lot of neat features, but some of those neat features make the code incredibly awkward to deal with, and the fact that it's "untyped" can be confusing and can impart a lack of discipline to a neophyte programmer where variables are concerned. (Untyped in quotes because it's not really untyped, it just obfuscates its types, which again can make things unnecessarily difficult.)
To be honest, I more or less agree, despite I like Python, and I use mainly it (with C) for coding.
I think you exagerate a little when you say "incredible awkward". I've read quite often code by other, and common Python code is generally (not always) much easier to understand than C++ for example.
As for the untyped things, as far as it means anything (it's dynamically typed, which is different from what you said, but I suppose you know it), I agree that it's not a good thing for a beginner. But it's sometimes really handful
And Python works much better as a first language for complete beginners (then again, from a teacher point of view).
But then again, for console coding, I wouldn't suggest Python.