distutils.misc_util#

numpy.distutils.misc_util.all_strings(lst)[source]#

如果 `lst` 中的所有项都是字符串对象,则返回 `True`。

numpy.distutils.misc_util.allpath(name)[source]#

将以斜杠分隔的路径名转换为使用操作系统路径分隔符的路径名。

numpy.distutils.misc_util.appendpath(prefix, path)[source]#
numpy.distutils.misc_util.as_list(seq)[source]#
numpy.distutils.misc_util.blue_text(s)[source]#
numpy.distutils.misc_util.cyan_text(s)[source]#
numpy.distutils.misc_util.cyg2win32(path: str) str[source]#

将路径从 Cygwin 原生格式转换为 Windows 原生格式。

使用 cygpath 工具(基本安装的一部分)进行实际转换。如果转换失败,则返回原始路径。

处理默认的 `/cygdrive` 挂载前缀以及 `/proc/cygdrive` 可移植前缀,自定义的 cygdrive 前缀(例如 `/` 或 `/mnt),以及绝对路径(例如 `/usr/src/` 或 `/home/username)。

参数:
pathstr

要转换的路径

返回:
converted_pathstr

转换后的路径

注意

cygpath 工具文档: https://cygwin.com/cygwin-ug-net/cygpath.html 其封装的 C 函数文档: https://cygwin.com/cygwin-api/func-cygwin-conv-path.html

numpy.distutils.misc_util.default_config_dict(name=None, parent_name=None, local_path=None)[source]#

返回一个配置字典,供 `setup_.py` 文件中定义的 `configuration()` 函数使用。

numpy.distutils.misc_util.dict_append(d, **kws)[source]#
numpy.distutils.misc_util.dot_join(*args)[source]#
numpy.distutils.misc_util.exec_mod_from_location(modname, modfile)[source]#

使用 `importlib` 机制从文件 modfile 导入模块 modname。根据 spec.loader,该模块可能不会注册到 `sys.modules` 中。

numpy.distutils.misc_util.filter_sources(sources)[source]#

分别返回包含 C、C++、Fortran 和 Fortran 90 模块源文件的四个文件名列表。

numpy.distutils.misc_util.generate_config_py(target)[source]#

生成包含包构建过程中使用的 `system_info` 信息的 `config.py` 文件。

用法

config[‘py_modules’].append((packagename, ‘__config__’,generate_config_py))

numpy.distutils.misc_util.get_build_architecture()[source]#
numpy.distutils.misc_util.get_cmd(cmdname, _cache={})[source]#
numpy.distutils.misc_util.get_data_files(data)[source]#
numpy.distutils.misc_util.get_dependencies(sources)[source]#
numpy.distutils.misc_util.get_ext_source_files(ext)[source]#
numpy.distutils.misc_util.get_frame(level=0)[source]#

从给定级别的调用堆栈中返回帧对象。

numpy.distutils.misc_util.get_info(pkgname, dirs=None)[source]#

返回给定 C 库的信息字典。

该信息字典包含使用 C 库所需的选项。

参数:
pkgnamestr

包的名称(应与 .ini 文件的名称匹配,不含扩展名,例如文件 foo.ini 对应 foo)。

dirs序列,可选

如果给定,应是一个包含额外目录的序列,用于查找 npy-pkg-config 文件。这些目录会在 NumPy 目录之前被搜索。

返回:
infodict

包含构建信息的字典。

引发:
PkgNotFound

如果未找到包。

示例

从 NumPy 获取 npymath 库所需的信息

>>> npymath_info = np.distutils.misc_util.get_info('npymath')
>>> npymath_info                                    
{'define_macros': [], 'libraries': ['npymath'], 'library_dirs':
['.../numpy/_core/lib'], 'include_dirs': ['.../numpy/_core/include']}

该信息字典随后可作为输入,传递给 Configuration 实例

config.add_extension('foo', sources=['foo.c'], extra_info=npymath_info)
numpy.distutils.misc_util.get_language(sources)[source]#

从源文件中确定语言值 (c, f77, f90)。

numpy.distutils.misc_util.get_lib_source_files(lib)[source]#
numpy.distutils.misc_util.get_mathlibs(path=None)[source]#

返回 `numpyconfig.h` 中的 `MATHLIB` 行。

numpy.distutils.misc_util.get_num_build_jobs()[source]#

获取由 `setup.py` 的 `--parallel` 命令行参数设置的并行构建作业数量。如果命令未接收到设置,则检查环境变量 `NPY_NUM_BUILD_JOBS`。如果该变量未设置,则返回系统上的处理器数量,最多为 8 个(以防止在 CPU 数量很多时系统过载)。

返回:
outint

可运行的并行作业数量

numpy.distutils.misc_util.get_numpy_include_dirs()[source]#
numpy.distutils.misc_util.get_pkg_info(pkgname, dirs=None)[source]#

返回给定包的库信息。

参数:
pkgnamestr

包的名称(应与 .ini 文件的名称匹配,不含扩展名,例如文件 foo.ini 对应 foo)。

dirs序列,可选

如果给定,应是一个包含额外目录的序列,用于查找 npy-pkg-config 文件。这些目录会在 NumPy 目录之前被搜索。

返回:
pkginfo类实例

包含构建信息的 LibraryInfo 实例。

引发:
PkgNotFound

如果未找到包。

numpy.distutils.misc_util.get_script_files(scripts)[source]#
numpy.distutils.misc_util.gpaths(paths, local_path='', include_non_existing=True)[source]#

对路径应用 glob 模式,如果需要,则在前面加上 `local_path`。

numpy.distutils.misc_util.green_text(s)[source]#
numpy.distutils.misc_util.has_cxx_sources(sources)[source]#

如果源文件包含 C++ 文件,则返回 `True`。

numpy.distutils.misc_util.has_f_sources(sources)[source]#

如果源文件包含 Fortran 文件,则返回 `True`。

numpy.distutils.misc_util.is_local_src_dir(directory)[source]#

如果目录是本地目录,则返回 `true`。

numpy.distutils.misc_util.is_sequence(seq)[source]#
numpy.distutils.misc_util.is_string(s)[source]#
numpy.distutils.misc_util.mingw32()[source]#

在使用 `mingw32` 环境时返回 `true`。

numpy.distutils.misc_util.minrelpath(path)[source]#

从路径中解析 `..` 和 `.`。

numpy.distutils.misc_util.njoin(*path)[source]#

连接两个或多个路径名组件,并: - 将以斜杠分隔的路径名转换为使用操作系统路径分隔符的路径名。 - 从路径中解析 `..` 和 `.`。

支持传递 `n` 个参数(如 `njoin('a','b')`),或传递一个包含 `n` 个名称的序列(如 `njoin(['a','b'])`),或混合使用这些参数。

numpy.distutils.misc_util.red_text(s)[source]#
numpy.distutils.misc_util.sanitize_cxx_flags(cxxflags)[source]#

某些标志对 C 有效,但对 C++ 无效。将其移除。

numpy.distutils.misc_util.terminal_has_colors()[source]#
numpy.distutils.misc_util.yellow_text(s)[source]#