1) W PyGame bym się bardziej nie zagłębiał, to może być fajna rzecz do prostych animacji i wizualizacji, ale z robieniem poważniejszych gier dałbym sobie spokój. Już lepiej zainteresuj się kivy.
2) Jeśli faktycznie chcesz być "dobry z pythona", to zapoznaj się z tym, co oferują standardowe moduły - jest ich bardzo dużo, pozwalają pisać naprawdę ładny i zwięzły kod, przykład:
lista = ['jablko', 'gruszka', 'pomarancza']
for i in range(len(lista)):
print(i, lista[i])
for i, owoc in enumerate(lista):
print(i, owoc)
Obydwie pętle robią to samo, za to w drugim przypadku kod wygląda o wiele przyjemniej :)
Innym przykładem mógłby być moduł itertools czy functools, zajrzyj tam na pewno.
3) Nawiązując do odpowiedzi @Secrus
backend webdev, data sciencist, sztuczna inteligencja.
to faktycznie to są najczęstsze zastosowania pythona, gdzie backend nie jest aż tak trudny, za to data science i sztuczna inteligencja będzie wymagała trochę większego nakładu wiedzy (głównie matematyki), chociaż to też nie jest reguła.
Data science to może być równie dobrze i regresja liniowa jak i bardziej skomplikowana analiza danych, a sztuczna inteligencja to zarówno różne algorytmy grafowe jak i sieci neuronowe czy algorytmy ewolucyjne.
Zbiór bibliotek, które mogę polecić:
- numpy - N-wymiarowe tablice, wygodne w użyciu, must have, jeśli chodzi o data science, obliczenia inżynierskie czy AI. Warto znać, bo wiele bibliotek z nich korzysta.
- scipy - zestaw narzędzi do obliczeń inżynierskich; transformaty, regresje i tak dalej.
- pandas - biblioteka z zestawem narzędzi dla data science.
- matplotlib - wykresy i wizualizacje.
- deap - zestaw narzędzi do algorytmów ewolucyjnych.
- keras + theano/tensorflow/jeszcze jakiś inny backend - sieci neuronowe.
No a webówka to głównie django i flask.