10.13 安装�有的包¶
问题¶
ä½ æƒ³è¦�安装一个第三方包,但是没有æ�ƒé™�将它安装到系统Python库ä¸åŽ»ã€‚ æˆ–è€…ï¼Œä½ å�¯èƒ½æƒ³è¦�安装一个供自己使用的包,而ä¸�是系统上é�¢æ‰€æœ‰ç”¨æˆ·ã€‚
解决方案¶
Python有一个用户安装目录,通常类似â€�~/.local/lib/python3.3/site-packagesâ€�。 è¦�强制在这个目录ä¸å®‰è£…包,å�¯ä½¿ç”¨å®‰è£…选项“–userâ€�。例如:
python3 setup.py install --user
或者
pip install --user packagename
在sys.pathä¸ç”¨æˆ·çš„“site-packagesâ€�目录ä½�于系统的“site-packagesâ€�目录之å‰�。 å› æ¤ï¼Œä½ 安装在里é�¢çš„包就比系统已安装的包优先级高 (尽管并ä¸�æ€»æ˜¯è¿™æ ·ï¼Œè¦�å�–决于第三方包管ç�†å™¨ï¼Œæ¯”如distribute或pip)。
讨论¶
通常包会被安装到系统的site-packages目录ä¸åŽ»ï¼Œè·¯å¾„ç±»ä¼¼â€œ/usr/local/lib/python3.3/site-packagesâ€�。 ä¸�è¿‡ï¼Œè¿™æ ·å�šéœ€è¦�有管ç�†å‘˜æ�ƒé™�并且使用sudo命令。 å°±ç®—ä½ æœ‰è¿™æ ·çš„æ�ƒé™�去执行命令,使用sudo去安装一个新的,å�¯èƒ½æ²¡æœ‰è¢«éªŒè¯�过的包有时候也ä¸�安全。
安装包到用户目录ä¸é€šå¸¸æ˜¯ä¸€ä¸ªæœ‰æ•ˆçš„æ–¹æ¡ˆï¼Œå®ƒå…�è®¸ä½ åˆ›å»ºä¸€ä¸ªè‡ªå®šä¹‰å®‰è£…ã€‚
å�¦å¤–ï¼Œä½ è¿˜å�¯ä»¥åˆ›å»ºä¸€ä¸ªè™šæ‹ŸçŽ¯å¢ƒï¼Œè¿™ä¸ªæˆ‘ä»¬åœ¨ä¸‹ä¸€èŠ‚ä¼šè®²åˆ°ã€‚