#python #find #system #executable #version #cli #install

bin+lib findpython

在您的系统上查找 Python 可执行文件

4 个版本

1.0.0-alpha.32023 年 7 月 12 日
1.0.0-alpha.02023 年 7 月 10 日

编程语言 中排名 408

MIT 许可证

51KB
1.5K SLoC

FindPython

用于在您的系统上查找 Python 版本的实用工具。

Tests PyPI PyPI - Python Version pdm-managed

描述

此库是 pythonfinder 项目的重写,由 @techalchemy 提供。它在简化整个代码结构的同时,保留了大部分原始功能。

安装

FindPython 可以用于 Python 和 Rust 项目。

在 Python 中安装 FindPython

pip install findpython

在 Rust 中安装 FindPython

cargo install findpyhton

或在一个 Rust 项目中使用 FindPython 库

cargo add findpython
展开此部分以查看 findpython 在包生态系统中的可用性 Packaging status

Python 使用方法

>>> import findpython
>>> findpython.find(3, 9)  # Find by major and minor version
<PythonVersion executable=/opt/homebrew/bin/python3.9, version=3.9.17, arch=64bit>
>>> findpython.find("3.9")  # Find by version string
<PythonVersion executable=/opt/homebrew/bin/python3.9, version=3.9.17, arch=64bit>
>>> findpython.find("3.9-32")  # Find by version string and architecture
<PythonVersion executable=C:/Python/3.9-32/python.exe, version=3.9.10, arch=32bit>
>>> findpython.find(name="python3")  # Find by executable name
<PythonVersion executable=/Users/fming/wkspace/github/findpython/.venv/bin/python3, version=3.11.4, arch=64bit>
>>> findpython.find("python3")  # Find by executable name without keyword argument, same as above
<PythonVersion executable=/Users/fming/wkspace/github/findpython/.venv/bin/python3, version=3.11.4, arch=64bit>
>>> findpython.find_all(major=3, minor=9)  # Same arguments as `find()`, but return all matches
[<PythonVersion executable=/opt/homebrew/bin/python3.9, version=3.9.17, arch=64bit>,
 <PythonVersion executable=/usr/bin/python3, version=3.9.6, arch=64bit>]

Rust 使用方法

use findpython::{Finder, MatchOptions};

fn main() {
    let finder = Finder::default();

    // Find by major and minor version
    let py = finder.find(MatchOptions::default().major(3).minor(10)).unwrap();
    println!("{:?}", py);
    // Find all matches
    let all_pythons = finder.find_all();
    println!("{:?}", all_pythons);
}

CLI 使用方法

此外,FindPython 还提供了一个 CLI 接口用于查找 Python 版本

Find python executables on your system

Usage: findpython [OPTIONS] [VERSION_SPEC]

Arguments:
  [VERSION_SPEC]  The version spec to find, e.g. 3|3.8|python3

Options:
  -a, --all                    Return all matching Python versions
      --resolve-symlinks       Resolve symlinks and remove duplicate results
      --no-same-file           Remove duplicate results that are the same binary
      --no-same-python         Remove duplicate results that wrap the same Python interpreter
      --providers <PROVIDERS>  Select provider names(comma-separated) to use
  -o, --output <OUTPUT>        The output format [default: default] [possible values: default, json, path]
  -h, --help                   Print help
  -V, --version                Print version

集成

FindPython 从以下位置查找 Python

许可证

FindPython 在 MIT 许可证下发布。

依赖项

~7–22MB
~266K SLoC