I have to create a game in Python for University and it should run on Windows.
Now I have found kivy and I am asking myself, if kivy is even better than pygame or is it just for touch displays and I better use pygame?
We don't have touch displays btw! 
The questions are, is kivy easier to program, easier to learn or more efficiently?
P.S.: I'm aware of the fact, that pygame is part of kivy!
I personally find kivy better than pygame. The latter one is kind of outdated and doesn't get much support today while kivy is still growing and gaining new possibilities. It's also not true that kivy is only for touch displays. It's completely multiplatform so you can create a kivy app for almost any operating system without needing to change anything in your code! Although you might get a little bit better performance with pygame, kivy is much more intuitive framework and if you don't aim to create a Crysis I'd go with kivy. Cheers!
P.S. You couldn't make anything like Crysis even with pygame :D If you want to create a 3D game in Python you better use kivent, a 3D engine written in C with Python API dedicated for kivy.
When I write a game for Windows, should I use kivy or pygame?