Python 3, ça ne s'apprend pas, c'est comme Python 2 à quelques différences près. Honnêtement, y a rien de compliqué à passer du 2 au 3, mais je peux comprendre que c'est chiant/pénible de migrer des projets existants du 2 vers 3.
Quand je l'ai fait pour Lexpage, c'était environ 4 ou 5h de boulot (parce que je migrais aussi vers une nouvelle version de Django) dont les 3/4 pouvaient être automatisés (mais je ne l'ai pas fait car je voulais "voir" petit à petit ce qui fonctionnait ou pas). Pour mes autres projets, je n'ai pratiquement eu aucun souci. Il ne me reste qu'un seul projet qui supporte encore officiellement Python 2 (la base de code est écrite pour être compatible 2 et 3, sans passer par une librairie tierce, vu que je ne voulais pas ajouter de dépendances juste pour ça). Peut-être que d'ici quelques mois, je dropperai le support Python 2 pour cette lib (ce qui me permettra de retirer quelques hacks dans le code au passage, et d'utiliser les "positional-only" arguments, ainsi que les annotations de typage le jour où MyPy supportera les unions paramétrisées de types génériques, mais j'en doute, vu qu'il n'existe pratiquement aucun langage qui supporte ça et qu'ils ont annoncés qu'ils ne supporteraient probablement jamais complètement le "prototype typing" (ou typage structurel), ce qui est un peu idiot vu que le coté "duck typing" de Python est clairement lié à ça!).