当前位置: 首页 > news >正文

PyCodeObject

2025.11.26

1.python是用C语言写成的,根据名字空间特性,以下代码经过python编译器编译后,一共得到()个PyCodeObject对象

class A:pass
def Fun():pass
a = A()
Fun()

Python编译器在编译代码时,每个独立的作用域(名字空间)会生成一个PyCodeObject对象。根据代码结构分析:

  1. 模块作用域

    • 整个.py文件作为一个模块,编译后生成一个PyCodeObject对象,对应模块级别的代码(如变量a的赋值和函数调用Fun())。
  2. 类作用域

    • class A:定义了一个类,类体内部是一个独立的作用域,编译后生成第二个PyCodeObject对象。
  3. 函数作用域

    • def Fun():定义了一个函数,函数体内部是另一个独立的作用域,编译后生成第三个PyCodeObject对象。

关键规则

  • 作用域划分

    • 类、函数、模块均会创建新的作用域,每个作用域对应一个PyCodeObject。
    • 实例化对象(如a = A())或普通语句(如函数调用Fun())不会创建新作用域,因此不增加PyCodeObject数量。
http://www.jsqmd.com/news/51021/

相关文章:

  • python拷贝
  • KEYDIY KD ZB02-4 Universal Smart Remote Key 3+1 Buttons for BMW - 5pcs/lot
  • Universal 3-Button Smart Remote Key for BMW - KEYDIY KD ZB02-3 (5pcs/lot)
  • 列表,元组,字典,集合笔记
  • sam3 (3)匹配mask - MKT
  • C++学习日志——蓝桥杯课程总结_基础篇/2025.11.26
  • KEYDIY KD NB104 4-Button Universal Remote Key (5pcs) – Reliable Replacement for Euro/American Cars
  • 在 linux 操作系统中,使用 vim 打开一个文本文件时,出现中文乱码的原因和解决方法
  • 实验3类和对象
  • 【实验报告】sglang,vllm,transformers 在强制串行推理场景下的表现
  • what is A
  • 夺命雷公狗—好用的截图工具分享
  • 2025 完整 AI 模型核心用法速查表 - 智慧园区
  • 实验 3
  • pandas创建多sheets excel文件
  • 直接load Qwen2_5OmniThinkerForConditionalGeneration进行推理时eos token失灵的问题,导致不断生成重复token直至max new tokens触发
  • 第三章 哈希表part01
  • 2025年11月睫毛假发拉丝机,拉丝机,扫把丝拉丝机厂家权威推荐,细丝拉丝技术实力与口碑解析!
  • 2025年11月混凝土增强纤维丝拉丝机,睫毛假发拉丝机,拉丝机厂家权威推荐,耐磨性能与精度测评!
  • 2025年11月MBBR管材设备,PPR管材设备,PE管材设备公司推荐,管材机械专业制造与品牌保障口碑之选
  • 2025年11月PE管材设备,PPR管材设备,PVC管材设备厂商推荐:聚焦管材机械企业综合实力与核心技术
  • 使用.NET开发并上线一个小智AI对话机器人的MCP服务转接平台
  • nginx 代理的请求头设置
  • 全国最好的有机农场推荐——德芳有机农场
  • 从网页复制变化内容的一个简单方法
  • 2025年11月PMMA板片生产线,EVA板片生产线,PET板片生产线厂家权威推荐,透明板材设备品质红榜发布!
  • 2025年11月管道除锈设备,管道3pe设备,管道内壁喷粉设备厂家推荐,防腐工艺与适配管径测评!
  • 实验三 类和对象
  • 2025年11月管道除锈设备,管道涂塑设备,管道设备厂家品牌榜,严苛工况适配性深度解析!
  • 2025年11月钢管涂塑设备,钢管3PE设备,钢管防腐设备厂商推荐:聚焦机械制造实力与核心技术竞争力