The main problem is that you not only have to distribute your Python application but also ensure that Python is installed on the target system.
Copying and installing files and creating shortcuts are handled by all installation applications like MSI. But it requires to become familiar with such applications like with any development tool.
For installing Python applications there is good description at
Cyrille Rossant - Create a standalone Windows installer for your Python application[
^]. It does not use MSI but the free InnoSetup utility.