小编chr*_*eck的帖子

如何在Mac OS X上确定python模块搜索路径?

当导入非内置模块时,解释器将搜索给定的位置sys.path.sys.path从这些位置初始化(http://docs.python.org/library/sys.html#sys.path):

  1. 包含输入脚本(或当前目录)的目录
  2. PYTHONPATH
  3. 依赖于安装的默认值

虽然前两个来源是直截了当的,但任何人都可以解释第三个如何运作,以及影响它的可能性有多大?

虽然我对一般解决方案感兴趣,但我的具体问题是:

  • 我已经安装了32位Enthought分发版,然后是Scipy-Superpack.现在,兴奋的python试图导入numpy /Library/Python/2.7/,这是superpack安装它们的地方,而不是来自enthought网站包.
  • 一个wxPython与创建的应用程序py2app -A不具有相同的sys.path开始与应用程序时为python start_app.py.

python macos pythonpath sys.path

7
推荐指数
1
解决办法
1万
查看次数

如何将带有数组参数的 Cython 函数导入到 Numba?

Numba 文档描述了如何通过创建ctypes.CFUNCTYPE. 但是,示例中的 Cython 函数仅接受标量参数。我有一个需要数组的 Cython 函数。如何初始化对应的ctypes.CFUNCTYPE对象?

赛通函数:

cimport numpy as np


ctypedef np.float64_t FLOAT64


cdef api void generate_options(
        FLOAT64 [:] y_error,
        ...
    ):
    ...
Run Code Online (Sandbox Code Playgroud)

Numba 文档描述了如何创建数组类型。但是,在ctypes.CFUNCTYPEraise中使用这些TypeError: item 1 in _argtypes_ has no from_param method,所以我认为它们不打算用作argtypes.


编辑:

评论中建议的解决方案从 Numba 调用该函数,但当我尝试切片时会产生分段错误。如果我之前注释掉最后一行return就不会出现错误。我对 c 类型做错了什么吗?

赛通:

ctypedef np.int8_t INT8
ctypedef np.int64_t INT64
ctypedef np.float64_t FLOAT64


cdef api void generate_options(
        FLOAT64 [:] y_error,
        FLOAT64 [:,:] x,
        FLOAT64 [:] x_pads, …
Run Code Online (Sandbox Code Playgroud)

python numpy cython numba

6
推荐指数
0
解决办法
350
查看次数

numpy数组的RawArray?

我想在多个进程之间共享一个numpy数组。进程仅读取数据,因此我想避免进行复制。我知道如果可以以a开头multiprocessing.sharedctypes.RawArray然后使用创建一个numpy数组,该怎么做numpy.frombuffer。但是,如果最初给我一个numpy数组怎么办?有没有一种方法可以用numpy数组的数据初始化RawArray而不复制数据?还是有另一种方法可以跨进程共享数据而不进行复制?

python arrays numpy multiprocessing

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

防止OS X用Python进入睡眠状态?

有没有办法阻止运行OS X的计算机从Python脚本中进入睡眠状态?

python macos sleep

4
推荐指数
2
解决办法
3013
查看次数

如何在 matplotlib 中制作条纹补丁?

我想制作一个带条纹的补丁(例如,矩形)(例如,以 45\xc2\xba 的角度交替等粗的黄线和红线)。我可以想到两种方法,但两种方法似乎都比应有的更复杂:1)制作implot并屏蔽它,2)为每个条纹生成单独的补丁。有没有更好的方法来做到这一点,最好是可以保存为矢量图形的方法?

\n

python matplotlib

3
推荐指数
1
解决办法
5025
查看次数