Debian and Python purists will say otherwise, and there are some reasons not to do it - e.g. wanting to support multiple Python versions across multiple distributions (such as Debian, Ubuntu, and CentOS). But I agree, in my opinion it is the most reasonable way.
Not to ship, but to install using pip if you're doing it outside your system packaging. Here is the recommended approach for Arch:
https://wiki.archlinux.org/index.php/Python_package_guidelin...
That is incidentally the most reasonable way to ship a python applications. :D