If its a shared library you should package it up and add it to site-packages and then you wont have to worry about setting anything up.  This is the best option.
If you dont want to use site-packages, then use PYTHONPATH.  Its why it exists, and it is the way to do what you want.
You might want to look into using site.addsitedir, path.append does not prevent duplicates.  It will also allow you to leverage .pth files.
Dynamically setting/adding things to PYTHONPATH via sys.path achieves the same result, but it can complicate things if you choose to reuse your new library.  It also causes issues if your paths change, you have to change code versus an environment variable. Unless it is completely necessary, you should not dynamically setup your python path.  
Copy & Paste is not a re-use pattern.  You aren't reusing anything you are duplicating and increasing maintenance.