我正在使用pip 1.4.1,尝试从本地路径安装包,例如:
pip install /path/to/my/local/package
Run Code Online (Sandbox Code Playgroud)
这就是我想要的,这或多或少等同于运行python /path/to/my/local/package/setup.py install,但我想将一些额外的选项/参数传递给我的软件包的setup.py install.
我从pip文档中了解到,这可以通过--install-option选项实现,例如:
pip install --install-option="--some-option" /path/to/my/local/package
Run Code Online (Sandbox Code Playgroud)
来自python-virtualenv谷歌集团的这篇文章表明这是可能的.
我不明白的是如何从setup.py中获取传入的"--some-option".我试着看sys.argv,但无论我为"--install-option ="投入什么,sys.argv总是如此:
['-c', 'egg_info', '--egg-base', 'pip-egg-info']
Run Code Online (Sandbox Code Playgroud)
如何从pip install中获取作为"--install-option"传入的内容的值?
我正在开发一个简单的(?)嵌入式 Python 项目。我有一个自定义包,已使用“setup.py install”安装到站点包中,例如:
在 C:\Python27\Lib\site-packages\ 中:
mypackage\
__init__.py
subpackage\
__init__.py
subpackage.py
....
mymodule.py
Run Code Online (Sandbox Code Playgroud)
只是做了一些简单的嵌入调用,我得到的一些行为与运行 Python 的 cmd 窗口中得到的行为不匹配。具体来说:
PyRun_SimpleString("import mypackage") //Success (return == 0)
PyRun_SimpleString("from mypackage import subpackage") //Success
PyRun_SimpleString("from mypackage import mymodule") //Fail (return == -1)
Run Code Online (Sandbox Code Playgroud)
...而所有这些在 cmd 窗口中都工作得很好(没有 ImportError,并且我可以在例如上获得预期结果dir(mymodule)
我知道结果的解释器与Py_Initialize()您在 cmd 窗口中得到的解释器有点不同,特别是 sys.path...阅读了一些其他答案后,我尝试插入 '' 作为 sys 的第一个元素.path:
PyRun_SimpleString("import sys\nsys.path.insert(0,'')")在导入失败之前,但运气不好,仍然返回-1。还尝试附加 sys.path 与 'C:\Python27\Lib\site-packages\mypackage' ,但仍然没有成功导入 'mymodule' (mymodule.py)。
基于SO和其他网站上的其他示例,我尝试了一些导入变体,例如
__import__('mypackage',globals(), locals(), fromlist=['mymodule'])
__import__('mypackage.mymodule',globals(), locals(), fromlist=['mymodule'])
Run Code Online (Sandbox Code Playgroud)
也尝试过PyImport_ImportModuleEx,与 PyRun_SimpleString 一样,它适用于除“from mypackage import mymodule”之外的所有内容。
此外:这个场景在 MacOS/Python 2.7 …
无论如何我可以将我的ttf字体转换为PostScript Type 1(pt1)格式吗?我尝试了这个在互联网上提到很多的ttf2pt1工具(http://ttf2pt1.sourceforge.net/),但是它不起作用(无法在我的服务器上编译).最后更新是从2003年开始,所以没什么大惊喜.那么,还有其他方法可以将ttf转换为pt1吗?