小编dja*_*ude的帖子

如何从'--install-option'获取从pip传递给setup.py的参数?

我正在使用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 pip setuptools

17
推荐指数
4
解决办法
8477
查看次数

为什么 PyRun_SimpleString 的“从导入”失败?

我正在开发一个简单的(?)嵌入式 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 …

c python python-embedding python-c-api

5
推荐指数
1
解决办法
1366
查看次数

将字体 - TrueType(TTF)转换为PostScript Type 1(PT1)

无论如何我可以将我的ttf字体转换为PostScript Type 1(pt1)格式吗?我尝试了这个在互联网上提到很多的ttf2pt1工具(http://ttf2pt1.sourceforge.net/),但是它不起作用(无法在我的服务器上编译).最后更新是从2003年开始,所以没什么大惊喜.那么,还有其他方法可以将ttf转换为pt1吗?

fonts truetype

5
推荐指数
1
解决办法
7070
查看次数

标签 统计

python ×2

c ×1

fonts ×1

pip ×1

python-c-api ×1

python-embedding ×1

setuptools ×1

truetype ×1