运行 Python 3.5 解释器需要哪些标准库模块?

2023-11-21

这是一个 CPython 程序,它尝试用空的初始化解释器sys.path:

#include <Python.h>

int main(int argc, char** argv)
{
    wchar_t* program = NULL;
    wchar_t* sys_path = NULL;

    Py_NoSiteFlag = 1;

    program = Py_DecodeLocale(argv[0], NULL);
    Py_SetProgramName(program);

    sys_path = Py_DecodeLocale("", NULL);
    Py_SetPath(sys_path);

    Py_Initialize();

    PyMem_RawFree(program);    
    PyMem_RawFree(sys_path);
    Py_Finalize();
}

执行上面的程序会出现以下错误:

Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'

Current thread 0x00007ffff7fc6700 (most recent call first):
Signal: SIGABRT (Aborted)

那么Python 3.5标准库中除了encodings包,是运行 Python 所必需的3.5口译员?在我看来,文档中似乎没有此信息。


这些是解释器启动期间使用的包/模块(如 @Charles Duffy 在评论中指出的那样,通过查看sys.modules).

结果取决于你是否有site启用与否(您的Py_NoSiteFlag = 1;暗示情况并非如此,但无论如何,我都会给出两个选项:-))。

site当您像这样使用它时,会拖动几个附加模块_sitebuiltins and stat,总共您可以仅使用以下命令来运行 Python:

abc.py               encodings       os.py         _sitebuiltins.py  sysconfig.py
codecs.py            genericpath.py  posixpath.py  site.py           _collections_abc.py  
io.py                stat.py         _weakrefset.py

with site禁用,您将被精简为以下内容6:

abc.py  codecs.py  encodings  io.py  os.py  _weakrefset.py

当通过调用时C with Py_Initialize()(或根据您的评论通过Windows)我猜os.py可能实际上并不需要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

运行 Python 3.5 解释器需要哪些标准库模块? 的相关文章

  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • 通过 Scrapy 抓取 Google Analytics

    我一直在尝试使用 Scrapy 从 Google Analytics 获取一些数据 尽管我是一个完全的 Python 新手 但我已经取得了一些进展 我现在可以通过 Scrapy 登录 Google Analytics 但我需要发出 AJAX
  • Django 管理员在模型编辑时间歇性返回 404

    我们使用 Django Admin 来维护导出到我们的一些站点的一些数据 有时 当单击标准更改列表视图来获取模型编辑表单而不是路由到正确的页面时 我们会得到 Django 404 页面 模板 它是偶尔发生的 我们可以通过重新加载三次来重现它
  • 将数据从 python pandas 数据框导出或写入 MS Access 表

    我正在尝试将数据从 python pandas 数据框导出到现有的 MS Access 表 我想用已更新的数据替换 MS Access 表 在 python 中 我尝试使用 pandas to sql 但收到错误消息 我觉得很奇怪 使用 p
  • 将 Matplotlib 误差线放置在不位于条形中心的位置

    我正在 Matplotlib 中生成带有错误栏的堆积条形图 不幸的是 某些层相对较小且数据多样 因此多个层的错误条可能重叠 从而使它们难以或无法读取 Example 有没有办法设置每个误差条的位置 即沿 x 轴移动它 以便重叠的线显示在彼此
  • 使 django 服务器可以在 LAN 中访问

    我已经安装了Django服务器 可以如下访问 http localhost 8000 get sms http 127 0 0 1 8000 get sms 假设我的IP是x x x x 当我这样做时 从同一网络下的另一台电脑 my ip
  • OpenCV Python cv2.mixChannels()

    我试图将其从 C 转换为 Python 但它给出了不同的色调结果 In C Transform it to HSV cvtColor src hsv CV BGR2HSV Use only the Hue value hue create
  • 为 Anaconda Python 安装 psycopg2

    我有 Anaconda Python 3 4 但是每当我运行旧代码时 我都会通过输入 source activate python2 切换到 Anaconda Python 2 7 我的问题是我为 Anaconda Python 3 4 安
  • 使用 matplotlib 绘制时间序列数据并仅在年初显示年份

    rcParams date autoformatter month b n Y 我正在使用 matpltolib 来绘制时间序列 如果我按上述方式设置 rcParams 则生成的图会在每个刻度处标记月份名称和年份 我怎样才能将其设置为仅在每
  • SQLALchemy .query:类“Car”的未解析属性引用“query”

    我有一个这里已经提到的问题https youtrack jetbrains com issue PY 44557 https youtrack jetbrains com issue PY 44557 但我还没有找到解决方案 我使用 Pyt
  • 绘制方程

    我正在尝试创建一个函数 它将绘制我告诉它的任何公式 import numpy as np import matplotlib pyplot as plt def graph formula x range x np array x rang
  • 从 Flask 访问 Heroku 变量

    我已经使用以下命令在 Heroku 配置中设置了数据库变量 heroku config add server xxx xxx xxx xxx heroku config add user userName heroku config add
  • 添加不同形状的 numpy 数组

    我想添加两个不同形状的 numpy 数组 但不进行广播 而是将 缺失 值视为零 可能最简单的例子是 1 2 3 2 gt 3 2 3 or 1 2 3 2 1 gt 3 2 3 1 0 0 我事先不知道形状 我正在弄乱每个 np shape
  • Fabric env.roledefs 未按预期运行

    On the 面料网站 http docs fabfile org en 1 10 usage execution html 给出这个例子 from fabric api import env env roledefs web hosts
  • 每个 X 具有多个 Y 值的 Python 散点图

    我正在尝试使用 Python 创建一个散点图 其中包含两个 X 类别 cat1 cat2 每个类别都有多个 Y 值 如果每个 X 值的 Y 值的数量相同 我可以使用以下代码使其工作 import numpy as np import mat
  • 解释 Python 中的数字范围

    在 Pylons Web 应用程序中 我需要获取一个字符串 例如 关于如何做到这一点有什么建议吗 我是 Python 新手 我还没有找到任何可以帮助解决此类问题的东西 该列表将是 1 2 3 45 46 48 49 50 51 77 使用
  • 有没有办法检测正在运行的代码是否正在上下文管理器内执行?

    正如标题所述 有没有办法做到这样的事情 def call back if called inside context print running in context else print called outside context 这将
  • 从列表指向字典变量

    假设你有一个清单 a 3 4 1 我想用这些信息来指向字典 b 3 4 1 现在 我需要的是一个常规 看到该值后 在 b 的位置内读写一个值 我不喜欢复制变量 我想直接改变变量b的内容 假设b是一个嵌套字典 你可以这样做 reduce di
  • Python 类继承 - 诡异的动作

    我观察到类继承有一个奇怪的效果 对于我正在处理的项目 我正在创建一个类来充当另一个模块的类的包装器 我正在使用第 3 方 aeidon 模块 用于操作字幕文件 但问题可能不太具体 以下是您通常如何使用该模块 project aeidon P
  • neo4j - python 驱动程序,服务不可用

    我对 neo4j 非常陌生 我正在尝试建立从 python3 6 到 neo4j 的连接 我已经安装了驱动程序 并且刚刚开始执行第一步 导入请求 导入操作系统 导入时间 导入urllib 从 neo4j v1 导入 GraphDatabas

随机推荐

  • 如何为使用canvas绘制的内容设置ontouch监听器:Android

    我有一个自定义视图 在其中画一个大圆圈 并在这个大圆圈的边缘画一个小圆圈 我想移动小圆圈 因此希望有一个仅用于小圆圈的 ontouch 侦听器 有人可以告诉我如何仅为小圆圈设置 ontouch 侦听器吗 public class Therm
  • JupyterLab:如何使用键盘快捷键清除当前单元格的输出?

    这个问题已针对 Jupyter 提出并回答笔记本电脑 here 有一个关于 Jupyter 的建议Lab还有关于如何hide单元格输出 但不清除它 使用下面的菜单很容易Edit gt Clear Outputs 但是如何使用键盘快捷键来做到
  • 将数据类型 nvarchar 转换为 datetime 时出错

    我有以下程序界面 Create procedure dbo InsertItemDetails TimeItemAdded datetime 当我这样称呼它时 EXEC dbo InsertItemDetails TimeItemAdded
  • 横滚、俯仰、偏航计算

    如何计算与齐次变换矩阵相关的横滚角 俯仰角和偏航角 我目前正在使用以下公式 但我不确定它们是否正确 pitch atan2 r20 sqrt r21 r21 r22 r22 yaw atan2 r10 r00 roll atan2 r21
  • Nest JS GraphQL“不能为不可为空返回 null”[重复]

    这个问题在这里已经有答案了 我尝试解决我的学习代码中的一个错误 但失败了 然后我尝试启动这段代码 https github com nestjs nest tree master sample 23 type graphql 并且同样的情况
  • UIAlertAction 按钮文本左对齐

    I want to align UIAlertAction text alignment to Left and add the icon as in image shown I spent lot of time on google to
  • Javascript 检测 Skype?

    某些 JavaScript 是否可以检测 Skype 是否安装 我问的原因是我想根据以下内容更改链接的 href 如果未安装 Skype 则显示一个弹出窗口 解释 Skype 是什么以及如何安装它 如果已安装 请将链接更改为skype my
  • 为什么Java中必须声明接口?

    有时 我们有多个类 它们的某些方法具有相同的签名 但与声明的 Java 接口不对应 例如 两者JTextField and JButton 其中包括其他几个javax swing 有一个方法 public void addActionLis
  • WordPress:PHP 致命错误:调用未定义的函数 get_option()

    我几乎到处搜索过 但提出的答案对我没有帮助 问题 我安装了 WordPress 最新版本 3 6 1 我已经进行了多次全新安装 查看了wp includes option php和其他文件 我很确定它一切正常并且都有正确的内容 我正在开发一
  • getDrawingCache() 返回 null

    我正在开发一个简单的绘画应用程序 并尝试实现在用户请求时提供更多绘制空间的功能 我认为这可以通过简单地启用我的 CustomView 类的滚动来完成 该类包含在 LinearLayout 中 然后包含在滚动视图类 如果我没有通过运行 Chu
  • Musicbrainz 指纹识别

    我一直忙于了解音乐大脑在过去的几个小时中 我注意到没有命令行应用程序来标记或指纹音频文件 Musicbrainz 的指纹识别有任何 CLI 实现吗 我怎样才能创建这些指纹 我找到了一些开发工具在他们的网站上 python musicbrai
  • Android 测试 BuildConfig 字段

    假设我的build gradle文件为中定义的同一变量定义了不同的值BuildConfig android def INTEGER integer def VARIABLE variable buildTypes release build
  • 如何在databricks中使用通配符列出文件

    我想列出 adls 文件夹中的所有镶木地板文件 dbutils fs ls abfss path to raw files parquet 有没有办法让上面的语句发挥作用 您可以使用 Magic Commands 来使用 shell 命令来
  • AWS CodePipeline 不将构件上传到 AWS S3

    As an effort to automate the Android build and test process I configured an AWS code pipeline that will 1st get the code
  • Python 遍历字符

    我一直在尝试通过中值字符串搜索 ACGT 基因组中的序列 我遇到的问题是从 AAAAAAAA 到 AAAAAAAC 等等 直到我尝试了所有可能的组合 我本质上是通过创建两个列表来进行暴力破解 一个包含 A C G T 另一个包含 8 个字符
  • 如何使用Python从txt文件中删除特殊字符

    from glob import glob pattern D report shakeall txt filelist glob pattern def countwords fp with open fp as fh return le
  • Android 12 设备所有者配置

    我有一个应用程序 可以通过下面的 JSON 中的 QR 码在 Android 12 及以上的设备上成功设置为设备所有者 android app extra PROVISIONING DEVICE ADMIN COMPONENT NAME p
  • JSON-RPC Swagger 组合

    我正在考虑为我的 Web 服务实现 JSON RPC这个图书馆 我也想实施Swagger为我服务 但是 我不确定这两者是否是一个很好的组合 在 JSON RPC 中 所有方法都位于同一资源后面 而这在 Swagger 中没有任何意义 我想知
  • 使用 Jackson 模块和 ScalaObjectMapper 在 Spark 1.4.0 上运行作业时出错

    我正在运行一个用 Scala 2 10 4 编写的 Spark 作业 并在 Spark 1 4 0 集群上运行 基于 HDFS 并使用 YARN 进行管理 并在 Maven 存储库上使用 Jackson 模块版本 2 6 1 当从我的 ID
  • 运行 Python 3.5 解释器需要哪些标准库模块?

    这是一个 CPython 程序 它尝试用空的初始化解释器sys path include