cpython 相关问题

Python编程语言的参考实现。将此标记用于特定于此实现的问题,一般Python问题应该用“python”标记。

旧版 Python 中 END_FINALLY 字节码的用途是什么?

考虑以下代码: 尝试: 你好世界() 除了: 失败() 及其反汇编(这是在 Python 2.7 中): 1 0 SETUP_EXCEPT 11(至 14) 2 3 LOAD_NAME ...

回答 1 投票 0

为什么自定义类型初始值设定项设置的属性需要受到保护?

CPython 教程为自定义类型定义了一个自定义初始值设定项,其中包含以下几行: 如果(第一个){ tmp = 自我->第一; Py_INCREF(第一个); 自我->第一=第一; Py_X...

回答 1 投票 0

如何将Python嵌入到独立的C++应用程序中? (即不依赖磁盘上的 Libs 文件夹)

我正在尝试将 python 嵌入到我的 C++ 应用程序中,但也使其独立,即不依赖于磁盘上的 python 依赖项,例如带有标准库脚本的 Libs 文件夹,但仍然能够...

回答 1 投票 0

为什么更简单的循环速度更慢?

使用 n = 10**8 调用,简单循环对我来说始终比复杂循环慢得多,我不明白为什么: def 简单(n): 而n: n -= 1 def 复数(n): 而T...

回答 1 投票 0

带有字节码的文件真的只是为导入的模块创建的吗?

在我的系统中,我创建了一个由多个文件组成的Python应用程序。应用程序的目录结构如下: 应用程序目录 |- file_a.py |- 文件_...

回答 1 投票 0

`python -X importtime`增加了多少开销?

有谁知道运行 python -X importtime [模块或文件] 与 python [模块或文件] 相比慢多少? 我想知道为生产代码运行 python -X importtime 是否是一个坏主意。 ...

回答 1 投票 0

Python 中的any() 的“幕后”发生了什么?

我已经养成了使用any()来避免“elif地狱”的习惯,我一直想知道它是否会影响我的代码。特别是在 for 循环中使用时。 经过测试后,对于我...

回答 1 投票 0

`dis`输出中的`ExceptionTable`是什么?

在python3.13中,当我尝试反汇编[i for i in range(10)]时,结果如下: >>> 导入磁盘 >>> >>> dis.dis('[i for i in range(10)]') 0 继续...

回答 1 投票 0

3.13 无 GIL 环境中的 Python 并行线程

我正在开发一个Python程序,我试图实现一些并行处理,以改善不写入同一内存位置的CPU密集型任务的运行时间。我吃过一些

回答 1 投票 0

在 Windows 上编译用 Zig 编写的 CPython 扩展

Zig 能够导入 C 库,因此可用于编写 CPython 扩展并编译它。这对我来说可能真的很有用。 这是我的 simple.zig Python 扩展 常量 py = @

回答 1 投票 0

此 TypeError 消息中提到的“代码对象”是什么?

在尝试使用Python的exec语句时,出现以下错误: 类型错误:exec:arg 1 必须是字符串、文件或代码对象 我不想传入字符串或文件,但是什么是代码

回答 4 投票 0

“导入错误:无法导入名称'base_impl'”运行独立的 python zipapp 可执行文件时

我正在运行oracle linux 7.9和python 3.6.8。我按照本教程创建了一个独立的 python zipapp 可执行文件。当我运行生成的可执行文件时,出现以下错误(1m 只是一个

回答 1 投票 0

如果“start”参数是自定义类的实例,为什么 sum 函数会变慢?

我正在玩弄 sum 函数并观察到以下行为。 情况1: 来源=“” A类: def __init__(自身, a): self.a = a def __add__(self, ot...

回答 2 投票 0

为什么字符串乘法的字节码不同?

我在玩字符串时遇到了以下行为: >>> 导入磁盘 >>> dis.dis('"abcdefgh" * 513') 1 0 LOAD_CONST 0 ('abc...

回答 1 投票 0

发电机的尺寸由什么决定?

导入系统 num_gen = (范围 (1) 中的 num 的 num) 打印(sys.getsizeof(num_gen)) num_gen =(范围(100)中的num的num) 打印(sys.getsizeof(num_gen)) num_gen = (num+1 范围内的 num(100)) 打印(系统。

回答 1 投票 0

我如何知道我正在使用哪个Python实现?

Python 有几种不同的实现:CPython、Jython、PyPy 等。我想以编程方式确定我的代码在哪个实现上运行。我怎样才能做到这一点? 具体来说,我...

回答 2 投票 0

找到用C实现的方法的源代码?

请注意,我问这个问题仅供参考。 我知道这个标题听起来像是“查找内置 Python 函数的源代码?”的重复。但让我解释一下。 ...

回答 2 投票 0

为什么这段特定代码在 Python 3.11 中运行得更快?

我在名为 benchmark.py 的 Python 文件中有以下代码。 来源=“” 对于范围(1000)内的 i: a = len(str(i)) ”“” 导入时间 打印(timeit.timeit(stmt=所以...

回答 1 投票 0

如何找到我正在使用的 CPython 版本?

我正在尝试从 Python 扩展包的非官方 Windows 二进制文件安装 OpenCV。 我下载了以下文件:opencv_python-3.4.3-cp37-cp37m-win_amd64.whl, 当我做 pip 时,我...

回答 4 投票 0

如何禁止在实例上调用类方法?

我一直在寻找peewee的源代码,特别是模型和更新函数:https://github.com/coleifer/peewee/blob/a33e8ccbd5b1e49f0a781d38d40eb5e8f344eee5/peewee.py#L4718 我不

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.